From 2f7436d8946fa3428dcd627392eb7629a3a1aa35 Mon Sep 17 00:00:00 2001 From: Oliver Date: Mon, 2 Jan 2023 22:26:13 +1100 Subject: [PATCH] New Crowdin updates (#4132) * updated translation base * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- InvenTree/locale/cs/LC_MESSAGES/django.po | 1685 +++++++++-------- InvenTree/locale/da/LC_MESSAGES/django.po | 1685 +++++++++-------- InvenTree/locale/de/LC_MESSAGES/django.po | 1685 +++++++++-------- InvenTree/locale/el/LC_MESSAGES/django.po | 1685 +++++++++-------- InvenTree/locale/en/LC_MESSAGES/django.po | 1685 +++++++++-------- InvenTree/locale/es/LC_MESSAGES/django.po | 1685 +++++++++-------- InvenTree/locale/es_MX/LC_MESSAGES/django.po | 1685 +++++++++-------- InvenTree/locale/fa/LC_MESSAGES/django.po | 1685 +++++++++-------- InvenTree/locale/fr/LC_MESSAGES/django.po | 1685 +++++++++-------- InvenTree/locale/he/LC_MESSAGES/django.po | 1685 +++++++++-------- InvenTree/locale/hu/LC_MESSAGES/django.po | 1701 ++++++++++-------- InvenTree/locale/id/LC_MESSAGES/django.po | 1685 +++++++++-------- InvenTree/locale/it/LC_MESSAGES/django.po | 1683 +++++++++-------- InvenTree/locale/ja/LC_MESSAGES/django.po | 1685 +++++++++-------- InvenTree/locale/ko/LC_MESSAGES/django.po | 1685 +++++++++-------- InvenTree/locale/nl/LC_MESSAGES/django.po | 1685 +++++++++-------- InvenTree/locale/no/LC_MESSAGES/django.po | 1685 +++++++++-------- InvenTree/locale/pl/LC_MESSAGES/django.po | 1685 +++++++++-------- InvenTree/locale/pt/LC_MESSAGES/django.po | 1685 +++++++++-------- InvenTree/locale/pt_br/LC_MESSAGES/django.po | 1685 +++++++++-------- InvenTree/locale/ru/LC_MESSAGES/django.po | 1683 +++++++++-------- InvenTree/locale/sl/LC_MESSAGES/django.po | 1685 +++++++++-------- InvenTree/locale/sv/LC_MESSAGES/django.po | 1685 +++++++++-------- InvenTree/locale/th/LC_MESSAGES/django.po | 1685 +++++++++-------- InvenTree/locale/tr/LC_MESSAGES/django.po | 1683 +++++++++-------- InvenTree/locale/vi/LC_MESSAGES/django.po | 1685 +++++++++-------- InvenTree/locale/zh/LC_MESSAGES/django.po | 1683 +++++++++-------- 27 files changed, 24709 insertions(+), 20794 deletions(-) diff --git a/InvenTree/locale/cs/LC_MESSAGES/django.po b/InvenTree/locale/cs/LC_MESSAGES/django.po index 5614ca8f5d..b687b88e48 100644 --- a/InvenTree/locale/cs/LC_MESSAGES/django.po +++ b/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: 2022-12-30 20:46+0000\n" -"PO-Revision-Date: 2022-12-31 11:29\n" +"POT-Creation-Date: 2023-01-01 11:05+0000\n" +"PO-Revision-Date: 2023-01-01 11:26\n" "Last-Translator: \n" "Language-Team: Czech\n" "Language: cs_CZ\n" @@ -34,7 +34,7 @@ msgstr "Zadejte datum" #: company/templates/company/sidebar.html:25 order/models.py:943 #: order/templates/order/po_sidebar.html:11 #: order/templates/order/so_sidebar.html:17 part/admin.py:27 -#: part/templates/part/part_sidebar.html:57 +#: part/models.py:2932 part/templates/part/part_sidebar.html:62 #: report/templates/report/inventree_build_order_base.html:172 #: stock/admin.py:103 stock/models.py:2061 stock/models.py:2169 #: stock/serializers.py:321 stock/serializers.py:454 stock/serializers.py:535 @@ -44,8 +44,8 @@ msgstr "Zadejte datum" #: templates/js/translated/company.js:1023 #: templates/js/translated/order.js:2435 templates/js/translated/order.js:2569 #: templates/js/translated/order.js:3067 templates/js/translated/order.js:4004 -#: templates/js/translated/order.js:4385 templates/js/translated/stock.js:1413 -#: templates/js/translated/stock.js:2020 +#: templates/js/translated/order.js:4385 templates/js/translated/part.js:882 +#: templates/js/translated/stock.js:1412 templates/js/translated/stock.js:2015 msgid "Notes" msgstr "Poznámky" @@ -204,18 +204,18 @@ msgstr "Příloha" msgid "Select file to attach" msgstr "Vyberte soubor k přiložení" -#: InvenTree/models.py:412 common/models.py:2366 company/models.py:129 +#: InvenTree/models.py:412 common/models.py:2373 company/models.py:129 #: company/models.py:281 company/models.py:516 order/models.py:85 -#: order/models.py:1282 part/admin.py:25 part/models.py:865 +#: order/models.py:1282 part/admin.py:25 part/models.py:866 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: stock/admin.py:102 templates/js/translated/company.js:692 #: templates/js/translated/company.js:1012 -#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1615 +#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1886 msgid "Link" msgstr "Odkaz" -#: InvenTree/models.py:413 build/models.py:290 part/models.py:866 +#: InvenTree/models.py:413 build/models.py:290 part/models.py:867 #: stock/models.py:716 msgid "Link to external URL" msgstr "Odkaz na externí URL" @@ -229,12 +229,13 @@ msgstr "Komentář" msgid "File comment" msgstr "Komentář k souboru" -#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1810 -#: common/models.py:1811 common/models.py:2034 common/models.py:2035 -#: common/models.py:2296 common/models.py:2297 part/models.py:2948 -#: part/models.py:2968 plugin/models.py:264 plugin/models.py:265 +#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1817 +#: common/models.py:1818 common/models.py:2041 common/models.py:2042 +#: common/models.py:2303 common/models.py:2304 part/models.py:2940 +#: part/models.py:3026 part/models.py:3046 plugin/models.py:264 +#: plugin/models.py:265 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2689 +#: templates/js/translated/stock.js:2684 msgid "User" msgstr "Uživatel" @@ -271,19 +272,20 @@ msgstr "Chyba při přejmenování souboru" msgid "Invalid choice" msgstr "Neplatný výběr" -#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2020 -#: company/models.py:363 label/models.py:101 part/models.py:809 -#: part/models.py:3123 plugin/models.py:94 report/models.py:152 +#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2027 +#: company/models.py:363 label/models.py:101 part/models.py:810 +#: part/models.py:3201 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 +#: templates/InvenTree/settings/notifications.html:17 #: templates/InvenTree/settings/plugin.html:60 #: templates/InvenTree/settings/plugin.html:104 #: templates/InvenTree/settings/plugin_settings.html:23 -#: templates/InvenTree/settings/settings.html:344 +#: templates/InvenTree/settings/settings.html:345 #: templates/js/translated/company.js:581 #: templates/js/translated/company.js:794 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:711 templates/js/translated/part.js:880 -#: templates/js/translated/part.js:2010 templates/js/translated/stock.js:2434 +#: templates/js/translated/part.js:982 templates/js/translated/part.js:1151 +#: templates/js/translated/part.js:2291 templates/js/translated/stock.js:2429 msgid "Name" msgstr "Název" @@ -292,24 +294,25 @@ msgstr "Název" #: company/models.py:522 company/templates/company/company_base.html:72 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:108 label/models.py:108 -#: order/models.py:83 part/admin.py:141 part/admin.py:222 part/models.py:832 -#: part/models.py:3132 part/templates/part/category.html:75 +#: order/models.py:83 part/admin.py:174 part/admin.py:255 part/models.py:833 +#: part/models.py:3210 part/templates/part/category.html:75 #: part/templates/part/part_base.html:172 #: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/admin.py:25 stock/templates/stock/location.html:117 +#: templates/InvenTree/settings/notifications.html:19 #: templates/InvenTree/settings/plugin_settings.html:28 -#: templates/InvenTree/settings/settings.html:355 +#: templates/InvenTree/settings/settings.html:356 #: templates/js/translated/bom.js:592 templates/js/translated/bom.js:895 #: templates/js/translated/build.js:2596 templates/js/translated/company.js:445 #: templates/js/translated/company.js:703 #: templates/js/translated/company.js:987 templates/js/translated/order.js:2030 #: templates/js/translated/order.js:2267 templates/js/translated/order.js:2845 -#: templates/js/translated/part.js:773 templates/js/translated/part.js:1223 -#: templates/js/translated/part.js:1497 templates/js/translated/part.js:2046 -#: templates/js/translated/part.js:2121 templates/js/translated/stock.js:1787 -#: templates/js/translated/stock.js:2466 templates/js/translated/stock.js:2526 +#: templates/js/translated/part.js:1044 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1768 templates/js/translated/part.js:2327 +#: templates/js/translated/part.js:2402 templates/js/translated/stock.js:1782 +#: templates/js/translated/stock.js:2461 templates/js/translated/stock.js:2521 msgid "Description" msgstr "Popis" @@ -322,7 +325,7 @@ msgid "parent" msgstr "nadřazený" #: InvenTree/models.py:580 InvenTree/models.py:581 -#: templates/js/translated/part.js:2055 templates/js/translated/stock.js:2475 +#: templates/js/translated/part.js:2336 templates/js/translated/stock.js:2470 msgid "Path" msgstr "Cesta" @@ -354,7 +357,7 @@ msgstr "Chyba serveru" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:58 part/models.py:3468 +#: InvenTree/serializers.py:58 part/models.py:3546 msgid "Must be a valid number" msgstr "Musí být platné číslo" @@ -421,107 +424,107 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:639 +#: InvenTree/settings.py:642 msgid "Czech" msgstr "Čeština" -#: InvenTree/settings.py:640 +#: InvenTree/settings.py:643 msgid "Danish" msgstr "" -#: InvenTree/settings.py:641 +#: InvenTree/settings.py:644 msgid "German" msgstr "Němčina" -#: InvenTree/settings.py:642 +#: InvenTree/settings.py:645 msgid "Greek" msgstr "Řečtina" -#: InvenTree/settings.py:643 +#: InvenTree/settings.py:646 msgid "English" msgstr "Angličtina" -#: InvenTree/settings.py:644 +#: InvenTree/settings.py:647 msgid "Spanish" msgstr "Španělština" -#: InvenTree/settings.py:645 +#: InvenTree/settings.py:648 msgid "Spanish (Mexican)" msgstr "Španělština (Mexiko)" -#: InvenTree/settings.py:646 +#: InvenTree/settings.py:649 msgid "Farsi / Persian" msgstr "Farsi / Perština" -#: InvenTree/settings.py:647 +#: InvenTree/settings.py:650 msgid "French" msgstr "Francouzština" -#: InvenTree/settings.py:648 +#: InvenTree/settings.py:651 msgid "Hebrew" msgstr "Hebrejština" -#: InvenTree/settings.py:649 +#: InvenTree/settings.py:652 msgid "Hungarian" msgstr "Maďarština" -#: InvenTree/settings.py:650 +#: InvenTree/settings.py:653 msgid "Italian" msgstr "Italština" -#: InvenTree/settings.py:651 +#: InvenTree/settings.py:654 msgid "Japanese" msgstr "Japonština" -#: InvenTree/settings.py:652 +#: InvenTree/settings.py:655 msgid "Korean" msgstr "Korejština" -#: InvenTree/settings.py:653 +#: InvenTree/settings.py:656 msgid "Dutch" msgstr "Nizozemština" -#: InvenTree/settings.py:654 +#: InvenTree/settings.py:657 msgid "Norwegian" msgstr "Norština" -#: InvenTree/settings.py:655 +#: InvenTree/settings.py:658 msgid "Polish" msgstr "Polština" -#: InvenTree/settings.py:656 +#: InvenTree/settings.py:659 msgid "Portuguese" msgstr "Portugalština" -#: InvenTree/settings.py:657 +#: InvenTree/settings.py:660 msgid "Portuguese (Brazilian)" msgstr "Portugalština (Brazilská)" -#: InvenTree/settings.py:658 +#: InvenTree/settings.py:661 msgid "Russian" msgstr "Ruština" -#: InvenTree/settings.py:659 +#: InvenTree/settings.py:662 msgid "Slovenian" msgstr "" -#: InvenTree/settings.py:660 +#: InvenTree/settings.py:663 msgid "Swedish" msgstr "Švédština" -#: InvenTree/settings.py:661 +#: InvenTree/settings.py:664 msgid "Thai" msgstr "Thajština" -#: InvenTree/settings.py:662 +#: InvenTree/settings.py:665 msgid "Turkish" msgstr "Turečtina" -#: InvenTree/settings.py:663 +#: InvenTree/settings.py:666 msgid "Vietnamese" msgstr "Vietnamština" -#: InvenTree/settings.py:664 +#: InvenTree/settings.py:667 msgid "Chinese" msgstr "Čínština" @@ -652,7 +655,7 @@ msgstr "Rozdělit od nadřazené položky" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2124 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2119 msgid "Merged stock items" msgstr "" @@ -756,7 +759,7 @@ msgstr "" #: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:141 -#: templates/InvenTree/settings/sidebar.html:47 +#: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:254 users/models.py:41 msgid "Build Orders" msgstr "" @@ -766,8 +769,9 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:155 order/models.py:241 order/models.py:651 -#: order/models.py:941 part/admin.py:224 part/models.py:3378 +#: order/models.py:941 part/admin.py:257 part/models.py:3456 #: part/templates/part/upload_bom.html:54 +#: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 #: templates/js/translated/bom.js:729 templates/js/translated/bom.js:905 @@ -793,13 +797,15 @@ msgstr "" #: build/models.py:180 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:684 #: order/models.py:1038 order/models.py:1149 order/models.py:1150 -#: part/models.py:381 part/models.py:2781 part/models.py:2894 -#: part/models.py:2909 part/models.py:2928 part/models.py:2946 -#: part/models.py:3045 part/models.py:3166 part/models.py:3258 -#: part/models.py:3343 part/models.py:3659 part/serializers.py:853 -#: part/templates/part/part_app_base.html:8 +#: part/models.py:382 part/models.py:2799 part/models.py:2912 +#: part/models.py:2972 part/models.py:2987 part/models.py:3006 +#: part/models.py:3024 part/models.py:3123 part/models.py:3244 +#: part/models.py:3336 part/models.py:3421 part/models.py:3737 +#: part/serializers.py:894 part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 +#: report/templates/report/inventree_bill_of_materials_report.html:110 +#: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_base.html:109 #: report/templates/report/inventree_po_report.html:89 #: report/templates/report/inventree_so_report.html:90 stock/serializers.py:90 @@ -819,12 +825,12 @@ msgstr "" #: templates/js/translated/order.js:1172 templates/js/translated/order.js:1676 #: templates/js/translated/order.js:2252 templates/js/translated/order.js:3199 #: templates/js/translated/order.js:3595 templates/js/translated/order.js:3825 -#: templates/js/translated/part.js:1208 templates/js/translated/part.js:1280 -#: templates/js/translated/part.js:1474 templates/js/translated/pricing.js:102 -#: templates/js/translated/stock.js:618 templates/js/translated/stock.js:783 -#: templates/js/translated/stock.js:993 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2552 templates/js/translated/stock.js:2747 -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/part.js:1479 templates/js/translated/part.js:1551 +#: templates/js/translated/part.js:1745 templates/js/translated/pricing.js:102 +#: templates/js/translated/stock.js:617 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:992 templates/js/translated/stock.js:1738 +#: templates/js/translated/stock.js:2547 templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2879 msgid "Part" msgstr "Díl" @@ -890,7 +896,7 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:252 order/models.py:87 part/models.py:1001 +#: build/models.py:252 order/models.py:87 part/models.py:1002 #: part/templates/part/part_base.html:318 templates/js/translated/order.js:2858 msgid "Creation Date" msgstr "" @@ -923,7 +929,7 @@ msgstr "" #: build/models.py:283 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:101 #: order/templates/order/order_base.html:185 -#: order/templates/order/sales_order_base.html:183 part/models.py:1005 +#: order/templates/order/sales_order_base.html:183 part/models.py:1006 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2658 templates/js/translated/order.js:2064 msgid "Responsible" @@ -936,7 +942,7 @@ msgstr "" #: build/models.py:289 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:188 -#: part/templates/part/part_base.html:376 stock/models.py:714 +#: part/templates/part/part_base.html:390 stock/models.py:714 #: stock/templates/stock/item_base.html:203 msgid "External Link" msgstr "" @@ -1011,8 +1017,8 @@ msgstr "" #: templates/js/translated/order.js:107 templates/js/translated/order.js:3200 #: templates/js/translated/order.js:3502 templates/js/translated/order.js:3507 #: templates/js/translated/order.js:3602 templates/js/translated/order.js:3694 -#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 -#: templates/js/translated/stock.js:2625 +#: templates/js/translated/part.js:803 templates/js/translated/stock.js:618 +#: templates/js/translated/stock.js:783 templates/js/translated/stock.js:2620 msgid "Stock Item" msgstr "" @@ -1022,12 +1028,13 @@ msgstr "" #: build/models.py:1364 build/serializers.py:192 #: build/templates/build/build_base.html:85 -#: build/templates/build/detail.html:34 common/models.py:1842 +#: build/templates/build/detail.html:34 common/models.py:1849 #: order/models.py:934 order/models.py:1460 order/serializers.py:1206 -#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:223 -#: part/forms.py:40 part/models.py:3359 +#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:256 +#: part/forms.py:40 part/models.py:2919 part/models.py:3437 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 +#: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_base.html:113 #: report/templates/report/inventree_po_report.html:90 #: report/templates/report/inventree_so_report.html:91 @@ -1049,13 +1056,14 @@ msgstr "" #: templates/js/translated/order.js:3201 templates/js/translated/order.js:3521 #: templates/js/translated/order.js:3608 templates/js/translated/order.js:3700 #: templates/js/translated/order.js:3847 templates/js/translated/order.js:4338 -#: templates/js/translated/part.js:1078 templates/js/translated/part.js:2568 +#: templates/js/translated/part.js:805 templates/js/translated/part.js:876 +#: templates/js/translated/part.js:1349 templates/js/translated/part.js:2849 #: templates/js/translated/pricing.js:114 #: templates/js/translated/pricing.js:207 #: templates/js/translated/pricing.js:255 -#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:490 -#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:814 -#: templates/js/translated/stock.js:2674 templates/js/translated/stock.js:2759 +#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:489 +#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:813 +#: templates/js/translated/stock.js:2669 templates/js/translated/stock.js:2754 msgid "Quantity" msgstr "" @@ -1097,8 +1105,8 @@ msgid "Enter quantity for build output" msgstr "" #: build/serializers.py:207 build/serializers.py:683 order/models.py:327 -#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:645 -#: part/serializers.py:1016 stock/models.py:574 stock/models.py:1312 +#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:686 +#: part/serializers.py:1057 stock/models.py:574 stock/models.py:1312 #: stock/serializers.py:294 msgid "Quantity must be greater than zero" msgstr "" @@ -1113,7 +1121,7 @@ msgstr "" #: build/serializers.py:231 order/serializers.py:463 order/serializers.py:1210 #: stock/serializers.py:303 templates/js/translated/order.js:1545 -#: templates/js/translated/stock.js:303 templates/js/translated/stock.js:491 +#: templates/js/translated/stock.js:302 templates/js/translated/stock.js:490 msgid "Serial Numbers" msgstr "" @@ -1146,9 +1154,10 @@ msgstr "" #: templates/js/translated/build.js:1759 templates/js/translated/order.js:1572 #: templates/js/translated/order.js:3514 templates/js/translated/order.js:3619 #: templates/js/translated/order.js:3627 templates/js/translated/order.js:3708 -#: templates/js/translated/part.js:183 templates/js/translated/stock.js:620 -#: templates/js/translated/stock.js:785 templates/js/translated/stock.js:995 -#: templates/js/translated/stock.js:1895 templates/js/translated/stock.js:2566 +#: templates/js/translated/part.js:186 templates/js/translated/part.js:804 +#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 +#: templates/js/translated/stock.js:994 templates/js/translated/stock.js:1890 +#: templates/js/translated/stock.js:2561 msgid "Location" msgstr "" @@ -1162,8 +1171,8 @@ msgstr "" #: stock/templates/stock/item_base.html:421 #: templates/js/translated/barcode.js:237 templates/js/translated/build.js:2630 #: templates/js/translated/order.js:1681 templates/js/translated/order.js:2034 -#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1870 -#: templates/js/translated/stock.js:2643 templates/js/translated/stock.js:2775 +#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:2638 templates/js/translated/stock.js:2770 msgid "Status" msgstr "" @@ -1239,8 +1248,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:595 build/serializers.py:640 part/models.py:3495 -#: part/models.py:3651 +#: build/serializers.py:595 build/serializers.py:640 part/models.py:3573 +#: part/models.py:3729 msgid "BOM Item" msgstr "" @@ -1406,7 +1415,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2670 templates/js/translated/order.js:2051 #: templates/js/translated/order.js:2382 templates/js/translated/order.js:2866 -#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1093 +#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1364 msgid "Target Date" msgstr "" @@ -1484,8 +1493,8 @@ msgstr "" #: stock/templates/stock/item_base.html:168 #: templates/js/translated/build.js:1250 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:1884 -#: templates/js/translated/stock.js:2782 +#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:1879 +#: templates/js/translated/stock.js:2777 #: templates/js/translated/table_filters.js:179 #: templates/js/translated/table_filters.js:270 msgid "Batch" @@ -1617,8 +1626,8 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:86 #: order/templates/order/sales_order_detail.html:140 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:210 -#: part/templates/part/part_sidebar.html:55 stock/templates/stock/item.html:117 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:233 +#: part/templates/part/part_sidebar.html:60 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" msgstr "" @@ -1635,7 +1644,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:316 +#: build/templates/build/index.html:18 part/templates/part/detail.html:339 msgid "New Build Order" msgstr "" @@ -1928,9 +1937,9 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1014 part/admin.py:41 part/models.py:3168 +#: common/models.py:1014 part/admin.py:41 part/models.py:3246 #: report/models.py:158 templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:504 +#: templates/js/translated/table_filters.js:508 msgid "Template" msgstr "" @@ -1938,7 +1947,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:1021 part/admin.py:37 part/admin.py:229 part/models.py:957 +#: common/models.py:1021 part/admin.py:37 part/admin.py:262 part/models.py:958 #: templates/js/translated/bom.js:1595 #: templates/js/translated/table_filters.js:196 #: templates/js/translated/table_filters.js:467 @@ -1949,7 +1958,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1028 part/admin.py:38 part/models.py:963 +#: common/models.py:1028 part/admin.py:38 part/models.py:964 #: templates/js/translated/table_filters.js:475 msgid "Component" msgstr "" @@ -1958,7 +1967,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1035 part/admin.py:39 part/models.py:974 +#: common/models.py:1035 part/admin.py:39 part/models.py:975 msgid "Purchaseable" msgstr "" @@ -1966,7 +1975,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1042 part/admin.py:40 part/models.py:979 +#: common/models.py:1042 part/admin.py:40 part/models.py:980 #: templates/js/translated/table_filters.js:496 msgid "Salable" msgstr "" @@ -1975,10 +1984,10 @@ msgstr "" msgid "Parts are salable by default" msgstr "" -#: common/models.py:1049 part/admin.py:42 part/models.py:969 +#: common/models.py:1049 part/admin.py:42 part/models.py:970 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:120 -#: templates/js/translated/table_filters.js:508 +#: templates/js/translated/table_filters.js:512 msgid "Trackable" msgstr "" @@ -1986,10 +1995,10 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1056 part/admin.py:43 part/models.py:989 +#: common/models.py:1056 part/admin.py:43 part/models.py:990 #: part/templates/part/part_base.html:156 #: templates/js/translated/table_filters.js:42 -#: templates/js/translated/table_filters.js:512 +#: templates/js/translated/table_filters.js:516 msgid "Virtual" msgstr "" @@ -2417,7 +2426,7 @@ msgstr "" msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1461 common/models.py:1803 +#: common/models.py:1461 common/models.py:1810 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -2749,41 +2758,50 @@ msgstr "" msgid "Display part scheduling information" msgstr "" -#: common/models.py:1778 -msgid "Table String Length" +#: common/models.py:1778 part/templates/part/detail.html:61 +#: templates/js/translated/part.js:822 +msgid "Part Stocktake" msgstr "" #: common/models.py:1779 +msgid "Display part stocktake information" +msgstr "" + +#: common/models.py:1785 +msgid "Table String Length" +msgstr "" + +#: common/models.py:1786 msgid "Maximimum length limit for strings displayed in table views" msgstr "" -#: common/models.py:1843 +#: common/models.py:1850 msgid "Price break quantity" msgstr "" -#: common/models.py:1850 company/serializers.py:393 order/models.py:975 -#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1145 +#: common/models.py:1857 company/serializers.py:393 order/models.py:975 +#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1416 #: templates/js/translated/pricing.js:354 msgid "Price" msgstr "" -#: common/models.py:1851 +#: common/models.py:1858 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2011 common/models.py:2189 +#: common/models.py:2018 common/models.py:2196 msgid "Endpoint" msgstr "" -#: common/models.py:2012 +#: common/models.py:2019 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2021 +#: common/models.py:2028 msgid "Name for this webhook" msgstr "" -#: common/models.py:2026 part/admin.py:36 part/models.py:984 +#: common/models.py:2033 part/admin.py:36 part/models.py:985 #: plugin/models.py:100 templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:116 #: templates/js/translated/table_filters.js:336 @@ -2791,131 +2809,133 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:2027 +#: common/models.py:2034 msgid "Is this webhook active" msgstr "" -#: common/models.py:2041 +#: common/models.py:2048 msgid "Token" msgstr "" -#: common/models.py:2042 +#: common/models.py:2049 msgid "Token for access" msgstr "" -#: common/models.py:2049 +#: common/models.py:2056 msgid "Secret" msgstr "" -#: common/models.py:2050 +#: common/models.py:2057 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2156 +#: common/models.py:2163 msgid "Message ID" msgstr "" -#: common/models.py:2157 +#: common/models.py:2164 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2165 +#: common/models.py:2172 msgid "Host" msgstr "" -#: common/models.py:2166 +#: common/models.py:2173 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2173 +#: common/models.py:2180 msgid "Header" msgstr "" -#: common/models.py:2174 +#: common/models.py:2181 msgid "Header of this message" msgstr "" -#: common/models.py:2180 +#: common/models.py:2187 msgid "Body" msgstr "" -#: common/models.py:2181 +#: common/models.py:2188 msgid "Body of this message" msgstr "" -#: common/models.py:2190 +#: common/models.py:2197 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2195 +#: common/models.py:2202 msgid "Worked on" msgstr "" -#: common/models.py:2196 +#: common/models.py:2203 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2355 +#: common/models.py:2362 msgid "Id" msgstr "" -#: common/models.py:2361 templates/js/translated/news.js:35 +#: common/models.py:2368 templates/js/translated/news.js:35 msgid "Title" msgstr "" -#: common/models.py:2371 templates/js/translated/news.js:51 +#: common/models.py:2378 templates/js/translated/news.js:51 msgid "Published" msgstr "" -#: common/models.py:2376 templates/InvenTree/settings/plugin.html:62 +#: common/models.py:2383 templates/InvenTree/settings/plugin.html:62 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/news.js:47 msgid "Author" msgstr "" -#: common/models.py:2381 templates/js/translated/news.js:43 +#: common/models.py:2388 templates/js/translated/news.js:43 msgid "Summary" msgstr "" -#: common/models.py:2386 +#: common/models.py:2393 msgid "Read" msgstr "" -#: common/models.py:2387 +#: common/models.py:2394 msgid "Was this news item read?" msgstr "" -#: common/notifications.py:293 +#: common/notifications.py:294 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:295 +#: common/notifications.py:296 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:301 +#: common/notifications.py:302 msgid "Items Received" msgstr "" -#: common/notifications.py:303 +#: common/notifications.py:304 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:415 +#: common/notifications.py:416 msgid "Error raised by plugin" msgstr "" #: common/views.py:85 order/templates/order/order_wizard/po_upload.html:51 #: order/templates/order/purchase_order_detail.html:25 order/views.py:102 -#: part/views.py:107 templates/patterns/wizard/upload.html:37 +#: part/templates/part/import_wizard/part_upload.html:58 part/views.py:109 +#: templates/patterns/wizard/upload.html:37 msgid "Upload File" msgstr "" #: common/views.py:86 order/templates/order/order_wizard/match_fields.html:52 #: order/views.py:103 #: part/templates/part/import_wizard/ajax_match_fields.html:45 -#: part/views.py:108 templates/patterns/wizard/match_fields.html:51 +#: part/templates/part/import_wizard/match_fields.html:52 part/views.py:110 +#: templates/patterns/wizard/match_fields.html:51 msgid "Match Fields" msgstr "" @@ -2934,7 +2954,9 @@ msgstr "" #: common/views.py:509 order/templates/order/order_wizard/match_fields.html:27 #: order/templates/order/order_wizard/match_parts.html:19 #: order/templates/order/order_wizard/po_upload.html:49 +#: part/templates/part/import_wizard/match_fields.html:27 #: part/templates/part/import_wizard/match_references.html:19 +#: part/templates/part/import_wizard/part_upload.html:56 #: templates/patterns/wizard/match_fields.html:26 #: templates/patterns/wizard/upload.html:35 msgid "Previous Step" @@ -2995,7 +3017,7 @@ msgstr "" msgid "Link to external company information" msgstr "" -#: company/models.py:140 part/models.py:878 +#: company/models.py:140 part/models.py:879 msgid "Image" msgstr "" @@ -3028,8 +3050,8 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:153 company/serializers.py:399 -#: company/templates/company/company_base.html:107 part/models.py:2762 -#: part/serializers.py:154 part/serializers.py:182 stock/serializers.py:182 +#: company/templates/company/company_base.html:107 part/models.py:2780 +#: part/serializers.py:156 part/serializers.py:184 stock/serializers.py:182 #: templates/InvenTree/settings/pricing.html:64 msgid "Currency" msgstr "" @@ -3055,12 +3077,12 @@ msgstr "" #: templates/js/translated/company.js:433 #: templates/js/translated/company.js:534 #: templates/js/translated/company.js:669 -#: templates/js/translated/company.js:957 templates/js/translated/part.js:238 +#: templates/js/translated/company.js:957 templates/js/translated/part.js:241 #: templates/js/translated/table_filters.js:439 msgid "Manufacturer" msgstr "" -#: company/models.py:269 templates/js/translated/part.js:239 +#: company/models.py:269 templates/js/translated/part.js:242 msgid "Select manufacturer" msgstr "" @@ -3070,11 +3092,11 @@ msgstr "" #: templates/js/translated/company.js:533 #: templates/js/translated/company.js:685 #: templates/js/translated/company.js:976 templates/js/translated/order.js:2286 -#: templates/js/translated/part.js:249 templates/js/translated/part.js:1067 +#: templates/js/translated/part.js:252 templates/js/translated/part.js:1338 msgid "MPN" msgstr "" -#: company/models.py:276 templates/js/translated/part.js:250 +#: company/models.py:276 templates/js/translated/part.js:253 msgid "Manufacturer Part Number" msgstr "" @@ -3100,8 +3122,8 @@ msgstr "" #: company/models.py:370 #: report/templates/report/inventree_test_report_base.html:95 #: stock/models.py:2156 templates/js/translated/company.js:582 -#: templates/js/translated/company.js:800 templates/js/translated/part.js:889 -#: templates/js/translated/stock.js:1399 +#: templates/js/translated/company.js:800 templates/js/translated/part.js:1160 +#: templates/js/translated/stock.js:1398 msgid "Value" msgstr "" @@ -3109,10 +3131,10 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:377 part/admin.py:26 part/models.py:951 -#: part/models.py:3128 part/templates/part/part_base.html:286 -#: templates/InvenTree/settings/settings.html:349 -#: templates/js/translated/company.js:806 templates/js/translated/part.js:895 +#: company/models.py:377 part/admin.py:26 part/models.py:952 +#: part/models.py:3206 part/templates/part/part_base.html:286 +#: templates/InvenTree/settings/settings.html:350 +#: templates/js/translated/company.js:806 templates/js/translated/part.js:1166 msgid "Units" msgstr "" @@ -3132,24 +3154,24 @@ msgstr "" #: templates/js/translated/company.js:304 #: templates/js/translated/company.js:437 #: templates/js/translated/company.js:930 templates/js/translated/order.js:2017 -#: templates/js/translated/part.js:219 templates/js/translated/part.js:1035 +#: templates/js/translated/part.js:222 templates/js/translated/part.js:1306 #: templates/js/translated/pricing.js:231 #: templates/js/translated/table_filters.js:443 msgid "Supplier" msgstr "" -#: company/models.py:498 templates/js/translated/part.js:220 +#: company/models.py:498 templates/js/translated/part.js:223 msgid "Select supplier" msgstr "" #: company/models.py:503 company/templates/company/supplier_part.html:146 #: part/bom.py:253 part/bom.py:281 templates/js/translated/company.js:303 -#: templates/js/translated/order.js:2273 templates/js/translated/part.js:230 -#: templates/js/translated/part.js:1053 templates/js/translated/pricing.js:243 +#: templates/js/translated/order.js:2273 templates/js/translated/part.js:233 +#: templates/js/translated/part.js:1324 templates/js/translated/pricing.js:243 msgid "SKU" msgstr "" -#: company/models.py:504 templates/js/translated/part.js:231 +#: company/models.py:504 templates/js/translated/part.js:234 msgid "Supplier stock keeping unit" msgstr "" @@ -3166,24 +3188,25 @@ msgid "Supplier part description" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:181 -#: part/admin.py:225 part/models.py:3381 part/templates/part/upload_bom.html:59 +#: part/admin.py:258 part/models.py:3459 part/templates/part/upload_bom.html:59 +#: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:397 msgid "Note" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "base cost" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:534 company/templates/company/supplier_part.html:167 #: stock/admin.py:101 stock/models.py:682 #: stock/templates/stock/item_base.html:243 -#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2016 +#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2011 msgid "Packaging" msgstr "" @@ -3196,7 +3219,7 @@ msgstr "" #: templates/js/translated/company.js:997 templates/js/translated/order.js:826 #: templates/js/translated/order.js:1253 templates/js/translated/order.js:1508 #: templates/js/translated/order.js:2317 templates/js/translated/order.js:2334 -#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1137 +#: templates/js/translated/part.js:1356 templates/js/translated/part.js:1408 msgid "Pack Quantity" msgstr "" @@ -3204,7 +3227,7 @@ msgstr "" msgid "Unit quantity supplied in a single pack" msgstr "" -#: company/models.py:544 part/models.py:1863 +#: company/models.py:544 part/models.py:1869 msgid "multiple" msgstr "" @@ -3216,8 +3239,8 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:1118 templates/js/translated/build.js:1883 -#: templates/js/translated/build.js:2770 templates/js/translated/part.js:623 -#: templates/js/translated/part.js:626 +#: templates/js/translated/build.js:2770 templates/js/translated/part.js:626 +#: templates/js/translated/part.js:629 #: templates/js/translated/table_filters.js:206 msgid "Available" msgstr "" @@ -3300,7 +3323,7 @@ msgstr "" #: stock/templates/stock/item_base.html:399 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:429 templates/js/translated/order.js:2827 -#: templates/js/translated/stock.js:2607 +#: templates/js/translated/stock.js:2602 #: templates/js/translated/table_filters.js:447 msgid "Customer" msgstr "" @@ -3314,7 +3337,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:206 -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:525 msgid "Remove Image" msgstr "" @@ -3323,19 +3346,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:209 -#: part/templates/part/part_base.html:514 +#: part/templates/part/part_base.html:528 #: templates/InvenTree/settings/user.html:87 #: templates/InvenTree/settings/user.html:149 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:238 -#: part/templates/part/part_base.html:543 +#: part/templates/part/part_base.html:557 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:253 -#: part/templates/part/part_base.html:598 +#: part/templates/part/part_base.html:612 msgid "Download Image" msgstr "" @@ -3351,7 +3374,7 @@ msgstr "" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:357 +#: part/templates/part/detail.html:380 msgid "New Supplier Part" msgstr "" @@ -3380,7 +3403,7 @@ msgstr "" msgid "Create new manufacturer part" msgstr "" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:387 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:410 msgid "New Manufacturer Part" msgstr "" @@ -3394,9 +3417,9 @@ msgstr "" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:35 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:35 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:200 -#: templates/InvenTree/settings/sidebar.html:49 +#: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:293 templates/navbar.html:50 #: users/models.py:42 msgid "Purchase Orders" @@ -3417,9 +3440,9 @@ msgstr "" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:39 +#: part/templates/part/detail.html:130 part/templates/part/part_sidebar.html:39 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:220 -#: templates/InvenTree/settings/sidebar.html:51 +#: templates/InvenTree/settings/sidebar.html:53 #: templates/js/translated/search.js:317 templates/navbar.html:61 #: users/models.py:43 msgid "Sales Orders" @@ -3451,7 +3474,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:221 -#: part/templates/part/detail.html:87 part/templates/part/part_base.html:85 +#: part/templates/part/detail.html:110 part/templates/part/part_base.html:85 msgid "Order part" msgstr "" @@ -3482,28 +3505,28 @@ msgid "Suppliers" msgstr "" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:368 +#: part/templates/part/detail.html:391 msgid "Delete supplier parts" msgstr "" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:369 part/templates/part/detail.html:399 -#: templates/js/translated/forms.js:455 templates/js/translated/helpers.js:38 -#: templates/js/translated/part.js:351 templates/js/translated/stock.js:188 -#: users/models.py:224 +#: part/templates/part/detail.html:392 part/templates/part/detail.html:422 +#: templates/js/translated/forms.js:458 templates/js/translated/helpers.js:38 +#: templates/js/translated/part.js:354 templates/js/translated/stock.js:187 +#: users/models.py:225 msgid "Delete" msgstr "" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:184 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:207 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:189 +#: part/templates/part/detail.html:212 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:62 msgid "New Parameter" @@ -3514,7 +3537,7 @@ msgid "Delete parameters" msgstr "" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:825 +#: part/templates/part/detail.html:865 msgid "Add Parameter" msgstr "" @@ -3538,7 +3561,7 @@ msgstr "" #: company/templates/company/supplier_part.html:24 stock/models.py:665 #: stock/templates/stock/item_base.html:236 #: templates/js/translated/company.js:946 templates/js/translated/order.js:1173 -#: templates/js/translated/stock.js:1974 +#: templates/js/translated/stock.js:1969 msgid "Supplier Part" msgstr "" @@ -3578,7 +3601,7 @@ msgstr "" #: company/templates/company/supplier_part.html:56 #: company/templates/company/supplier_part.html:57 #: company/templates/company/supplier_part.html:222 -#: part/templates/part/detail.html:88 +#: part/templates/part/detail.html:111 msgid "Order Part" msgstr "" @@ -3630,7 +3653,7 @@ msgstr "" #: company/templates/company/supplier_part.html:204 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:198 -#: templates/js/translated/stock.js:467 +#: templates/js/translated/stock.js:466 msgid "New Stock Item" msgstr "" @@ -3662,10 +3685,10 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 -#: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/part.js:777 templates/js/translated/part.js:1378 -#: templates/js/translated/part.js:1534 templates/js/translated/stock.js:994 -#: templates/js/translated/stock.js:1799 templates/navbar.html:31 +#: templates/InvenTree/settings/sidebar.html:47 +#: templates/js/translated/part.js:1048 templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1805 templates/js/translated/stock.js:993 +#: templates/js/translated/stock.js:1794 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3680,7 +3703,7 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:29 #: part/templates/part/part_sidebar.html:30 -#: templates/InvenTree/settings/sidebar.html:35 +#: templates/InvenTree/settings/sidebar.html:37 msgid "Pricing" msgstr "" @@ -3692,7 +3715,7 @@ msgstr "" #: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:155 templates/js/translated/search.js:225 -#: templates/js/translated/stock.js:2484 users/models.py:40 +#: templates/js/translated/stock.js:2479 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3801,9 +3824,9 @@ msgstr "" #: stock/templates/stock/item_base.html:182 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:619 templates/js/translated/order.js:1174 -#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1012 -#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1954 -#: templates/js/translated/stock.js:2588 +#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1283 +#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1949 +#: templates/js/translated/stock.js:2583 msgid "Purchase Order" msgstr "" @@ -3973,7 +3996,7 @@ msgstr "" #: order/models.py:1046 order/templates/order/order_base.html:178 #: templates/js/translated/order.js:1679 templates/js/translated/order.js:2404 -#: templates/js/translated/part.js:1129 templates/js/translated/part.js:1161 +#: templates/js/translated/part.js:1400 templates/js/translated/part.js:1432 #: templates/js/translated/table_filters.js:358 msgid "Received" msgstr "" @@ -3984,7 +4007,7 @@ msgstr "" #: order/models.py:1054 stock/models.py:800 stock/serializers.py:173 #: stock/templates/stock/item_base.html:189 -#: templates/js/translated/stock.js:2005 +#: templates/js/translated/stock.js:2000 msgid "Purchase Price" msgstr "" @@ -4350,18 +4373,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:9 #: part/templates/part/import_wizard/ajax_match_fields.html:9 +#: part/templates/part/import_wizard/match_fields.html:9 #: templates/patterns/wizard/match_fields.html:8 msgid "Missing selections for the following required columns" msgstr "" #: order/templates/order/order_wizard/match_fields.html:20 #: part/templates/part/import_wizard/ajax_match_fields.html:20 +#: part/templates/part/import_wizard/match_fields.html:20 #: templates/patterns/wizard/match_fields.html:19 msgid "Duplicate selections found, see below. Fix them then retry submitting." msgstr "" #: order/templates/order/order_wizard/match_fields.html:29 #: order/templates/order/order_wizard/match_parts.html:21 +#: part/templates/part/import_wizard/match_fields.html:29 #: part/templates/part/import_wizard/match_references.html:21 #: templates/patterns/wizard/match_fields.html:28 msgid "Submit Selections" @@ -4369,18 +4395,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:35 #: part/templates/part/import_wizard/ajax_match_fields.html:28 +#: part/templates/part/import_wizard/match_fields.html:35 #: templates/patterns/wizard/match_fields.html:34 msgid "File Fields" msgstr "" #: order/templates/order/order_wizard/match_fields.html:42 #: part/templates/part/import_wizard/ajax_match_fields.html:35 +#: part/templates/part/import_wizard/match_fields.html:42 #: templates/patterns/wizard/match_fields.html:41 msgid "Remove column" msgstr "" #: order/templates/order/order_wizard/match_fields.html:60 #: part/templates/part/import_wizard/ajax_match_fields.html:53 +#: part/templates/part/import_wizard/match_fields.html:60 #: templates/patterns/wizard/match_fields.html:59 msgid "Duplicate selection" msgstr "" @@ -4389,12 +4418,13 @@ msgstr "" #: order/templates/order/order_wizard/match_parts.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: 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:102 templates/js/translated/build.js:485 #: templates/js/translated/build.js:641 templates/js/translated/build.js:2088 #: templates/js/translated/order.js:1122 templates/js/translated/order.js:1624 -#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:657 -#: templates/js/translated/stock.js:825 +#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:824 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4429,6 +4459,7 @@ msgstr "" #: order/templates/order/order_wizard/po_upload.html:27 #: part/templates/part/import_wizard/ajax_part_upload.html:10 +#: part/templates/part/import_wizard/part_upload.html:26 #: templates/patterns/wizard/upload.html:13 #, python-format msgid "Step %(step)s of %(count)s" @@ -4567,12 +4598,12 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:19 part/admin.py:219 part/models.py:3262 stock/admin.py:84 +#: part/admin.py:19 part/admin.py:252 part/models.py:3340 stock/admin.py:84 #: templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/admin.py:20 part/admin.py:221 part/models.py:3266 stock/admin.py:85 +#: part/admin.py:20 part/admin.py:254 part/models.py:3344 stock/admin.py:85 msgid "Part Name" msgstr "" @@ -4580,32 +4611,32 @@ msgstr "" msgid "Part Description" msgstr "" -#: part/admin.py:22 part/models.py:852 part/templates/part/part_base.html:272 -#: templates/js/translated/part.js:763 templates/js/translated/part.js:1491 -#: templates/js/translated/stock.js:1765 +#: part/admin.py:22 part/models.py:853 part/templates/part/part_base.html:272 +#: templates/js/translated/part.js:1034 templates/js/translated/part.js:1762 +#: templates/js/translated/stock.js:1760 msgid "IPN" msgstr "" -#: part/admin.py:23 part/models.py:860 part/templates/part/part_base.html:279 -#: report/models.py:171 templates/js/translated/part.js:768 +#: part/admin.py:23 part/models.py:861 part/templates/part/part_base.html:279 +#: report/models.py:171 templates/js/translated/part.js:1039 msgid "Revision" msgstr "" -#: part/admin.py:24 part/admin.py:145 part/models.py:838 +#: part/admin.py:24 part/admin.py:178 part/models.py:839 #: part/templates/part/category.html:87 part/templates/part/part_base.html:300 msgid "Keywords" msgstr "" -#: part/admin.py:28 part/admin.py:139 +#: part/admin.py:28 part/admin.py:172 #: templates/js/translated/model_renderers.js:338 msgid "Category ID" msgstr "" -#: part/admin.py:29 part/admin.py:140 +#: part/admin.py:29 part/admin.py:173 msgid "Category Name" msgstr "" -#: part/admin.py:30 part/admin.py:144 +#: part/admin.py:30 part/admin.py:177 msgid "Default Location ID" msgstr "" @@ -4613,7 +4644,7 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:33 part/models.py:944 part/templates/part/part_base.html:206 +#: part/admin.py:33 part/models.py:945 part/templates/part/part_base.html:206 msgid "Minimum Stock" msgstr "" @@ -4625,8 +4656,8 @@ msgstr "" #: part/admin.py:48 part/bom.py:145 part/templates/part/part_base.html:213 #: templates/js/translated/bom.js:1156 templates/js/translated/build.js:1935 -#: templates/js/translated/part.js:613 templates/js/translated/part.js:633 -#: templates/js/translated/part.js:1381 templates/js/translated/part.js:1559 +#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 +#: templates/js/translated/part.js:1652 templates/js/translated/part.js:1830 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4642,115 +4673,115 @@ msgid "Allocated" msgstr "" #: part/admin.py:51 part/templates/part/part_base.html:244 -#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 -#: templates/js/translated/part.js:1385 templates/js/translated/part.js:1566 +#: templates/js/translated/part.js:619 templates/js/translated/part.js:639 +#: templates/js/translated/part.js:1656 templates/js/translated/part.js:1837 msgid "Building" msgstr "" -#: part/admin.py:52 part/models.py:2846 +#: part/admin.py:52 part/models.py:2864 msgid "Minimum Cost" msgstr "" -#: part/admin.py:53 part/models.py:2852 +#: part/admin.py:53 part/models.py:2870 msgid "Maximum Cost" msgstr "" -#: part/admin.py:142 part/admin.py:216 stock/admin.py:26 stock/admin.py:98 +#: part/admin.py:175 part/admin.py:249 stock/admin.py:26 stock/admin.py:98 msgid "Parent ID" msgstr "" -#: part/admin.py:143 part/admin.py:218 stock/admin.py:27 +#: part/admin.py:176 part/admin.py:251 stock/admin.py:27 msgid "Parent Name" msgstr "" -#: part/admin.py:146 part/templates/part/category.html:81 +#: part/admin.py:179 part/templates/part/category.html:81 #: part/templates/part/category.html:94 msgid "Category Path" msgstr "" -#: part/admin.py:149 part/models.py:382 part/templates/part/cat_link.html:3 +#: part/admin.py:182 part/models.py:383 part/templates/part/cat_link.html:3 #: part/templates/part/category.html:23 part/templates/part/category.html:134 #: part/templates/part/category.html:154 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:84 -#: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:2065 templates/js/translated/search.js:146 +#: templates/InvenTree/settings/sidebar.html:43 +#: templates/js/translated/part.js:2346 templates/js/translated/search.js:146 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" -#: part/admin.py:211 +#: part/admin.py:244 msgid "BOM Level" msgstr "" -#: part/admin.py:213 +#: part/admin.py:246 msgid "BOM Item ID" msgstr "" -#: part/admin.py:217 +#: part/admin.py:250 msgid "Parent IPN" msgstr "" -#: part/admin.py:220 part/models.py:3270 +#: part/admin.py:253 part/models.py:3348 msgid "Part IPN" msgstr "" -#: part/admin.py:226 templates/js/translated/pricing.js:91 +#: part/admin.py:259 templates/js/translated/pricing.js:91 #: templates/js/translated/pricing.js:732 msgid "Minimum Price" msgstr "" -#: part/admin.py:227 templates/js/translated/pricing.js:86 +#: part/admin.py:260 templates/js/translated/pricing.js:86 #: templates/js/translated/pricing.js:740 msgid "Maximum Price" msgstr "" -#: part/api.py:536 +#: part/api.py:538 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:556 +#: part/api.py:558 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:574 +#: part/api.py:576 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:660 +#: part/api.py:662 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:818 +#: part/api.py:820 msgid "Valid" msgstr "" -#: part/api.py:819 +#: part/api.py:821 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:825 +#: part/api.py:827 msgid "This option must be selected" msgstr "" -#: part/api.py:1265 +#: part/api.py:1281 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1269 +#: part/api.py:1285 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1284 +#: part/api.py:1300 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1315 part/api.py:1319 part/api.py:1334 part/api.py:1338 +#: part/api.py:1331 part/api.py:1335 part/api.py:1350 part/api.py:1354 msgid "This field is required" msgstr "" -#: part/bom.py:142 part/models.py:116 part/models.py:887 -#: part/templates/part/category.html:109 part/templates/part/part_base.html:360 +#: part/bom.py:142 part/models.py:116 part/models.py:888 +#: part/templates/part/category.html:109 part/templates/part/part_base.html:374 msgid "Default Location" msgstr "" @@ -4801,7 +4832,7 @@ msgstr "" msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:159 part/models.py:3211 part/templates/part/category.html:16 +#: part/models.py:159 part/models.py:3289 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -4812,423 +4843,459 @@ msgstr "" msgid "Part Categories" msgstr "" -#: part/models.py:468 +#: part/models.py:469 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:538 part/models.py:550 +#: part/models.py:539 part/models.py:551 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:640 +#: part/models.py:641 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:771 +#: part/models.py:772 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:776 +#: part/models.py:777 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:790 +#: part/models.py:791 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:808 part/models.py:3267 +#: part/models.py:809 part/models.py:3345 msgid "Part name" msgstr "" -#: part/models.py:815 +#: part/models.py:816 msgid "Is Template" msgstr "" -#: part/models.py:816 +#: part/models.py:817 msgid "Is this part a template part?" msgstr "" -#: part/models.py:826 +#: part/models.py:827 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:827 +#: part/models.py:828 msgid "Variant Of" msgstr "" -#: part/models.py:833 +#: part/models.py:834 msgid "Part description" msgstr "" -#: part/models.py:839 +#: part/models.py:840 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:846 part/models.py:2966 part/models.py:3210 +#: part/models.py:847 part/models.py:3044 part/models.py:3288 #: part/templates/part/part_base.html:263 -#: templates/InvenTree/settings/settings.html:229 +#: templates/InvenTree/settings/settings.html:230 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1513 templates/js/translated/part.js:1770 +#: templates/js/translated/part.js:1784 templates/js/translated/part.js:2051 msgid "Category" msgstr "" -#: part/models.py:847 +#: part/models.py:848 msgid "Part category" msgstr "" -#: part/models.py:853 +#: part/models.py:854 msgid "Internal Part Number" msgstr "" -#: part/models.py:859 +#: part/models.py:860 msgid "Part revision or version number" msgstr "" -#: part/models.py:885 +#: part/models.py:886 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:930 part/templates/part/part_base.html:369 +#: part/models.py:931 part/templates/part/part_base.html:383 msgid "Default Supplier" msgstr "" -#: part/models.py:931 +#: part/models.py:932 msgid "Default supplier part" msgstr "" -#: part/models.py:938 +#: part/models.py:939 msgid "Default Expiry" msgstr "" -#: part/models.py:939 +#: part/models.py:940 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:945 +#: part/models.py:946 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:952 +#: part/models.py:953 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:958 +#: part/models.py:959 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:964 +#: part/models.py:965 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:970 +#: part/models.py:971 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:975 +#: part/models.py:976 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:980 +#: part/models.py:981 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:985 +#: part/models.py:986 msgid "Is this part active?" msgstr "" -#: part/models.py:990 +#: part/models.py:991 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:992 +#: part/models.py:993 msgid "Part notes" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "BOM checksum" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:997 +#: part/models.py:998 msgid "BOM checked by" msgstr "" -#: part/models.py:999 +#: part/models.py:1000 msgid "BOM checked date" msgstr "" -#: part/models.py:1003 +#: part/models.py:1004 msgid "Creation User" msgstr "" -#: part/models.py:1863 +#: part/models.py:1010 part/templates/part/part_base.html:345 +#: stock/templates/stock/item_base.html:445 +#: templates/js/translated/part.js:1901 +msgid "Last Stocktake" +msgstr "" + +#: part/models.py:1869 msgid "Sell multiple" msgstr "" -#: part/models.py:2763 +#: part/models.py:2781 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:2768 +#: part/models.py:2786 templates/js/translated/part.js:806 msgid "Updated" msgstr "" -#: part/models.py:2769 +#: part/models.py:2787 msgid "Timestamp of last pricing update" msgstr "" -#: part/models.py:2786 +#: part/models.py:2804 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:2787 +#: part/models.py:2805 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:2792 +#: part/models.py:2810 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:2793 +#: part/models.py:2811 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:2798 +#: part/models.py:2816 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:2799 +#: part/models.py:2817 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:2804 +#: part/models.py:2822 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:2805 +#: part/models.py:2823 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:2810 +#: part/models.py:2828 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:2811 +#: part/models.py:2829 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:2816 +#: part/models.py:2834 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:2817 +#: part/models.py:2835 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:2822 +#: part/models.py:2840 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:2823 +#: part/models.py:2841 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:2828 +#: part/models.py:2846 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:2829 +#: part/models.py:2847 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:2834 +#: part/models.py:2852 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:2835 +#: part/models.py:2853 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:2840 +#: part/models.py:2858 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:2841 +#: part/models.py:2859 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:2847 +#: part/models.py:2865 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:2853 +#: part/models.py:2871 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:2858 +#: part/models.py:2876 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:2859 +#: part/models.py:2877 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:2864 +#: part/models.py:2882 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:2865 +#: part/models.py:2883 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:2870 +#: part/models.py:2888 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:2871 +#: part/models.py:2889 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:2876 +#: part/models.py:2894 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:2877 +#: part/models.py:2895 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3013 +#: part/models.py:2913 +msgid "Part for stocktake" +msgstr "" + +#: part/models.py:2920 +msgid "Total available stock at time of stocktake" +msgstr "" + +#: part/models.py:2924 part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:63 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:2043 templates/js/translated/part.js:887 +#: templates/js/translated/pricing.js:537 +#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2511 +msgid "Date" +msgstr "" + +#: part/models.py:2925 +msgid "Date stocktake was performed" +msgstr "" + +#: part/models.py:2933 +msgid "Additional notes" +msgstr "" + +#: part/models.py:2941 +msgid "User who performed this stocktake" +msgstr "" + +#: part/models.py:3091 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3030 +#: part/models.py:3108 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:3050 templates/js/translated/part.js:2116 -#: templates/js/translated/stock.js:1379 +#: part/models.py:3128 templates/js/translated/part.js:2397 +#: templates/js/translated/stock.js:1378 msgid "Test Name" msgstr "" -#: part/models.py:3051 +#: part/models.py:3129 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3056 +#: part/models.py:3134 msgid "Test Description" msgstr "" -#: part/models.py:3057 +#: part/models.py:3135 msgid "Enter description for this test" msgstr "" -#: part/models.py:3062 templates/js/translated/part.js:2125 +#: part/models.py:3140 templates/js/translated/part.js:2406 #: templates/js/translated/table_filters.js:322 msgid "Required" msgstr "" -#: part/models.py:3063 +#: part/models.py:3141 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3068 templates/js/translated/part.js:2133 +#: part/models.py:3146 templates/js/translated/part.js:2414 msgid "Requires Value" msgstr "" -#: part/models.py:3069 +#: part/models.py:3147 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3074 templates/js/translated/part.js:2140 +#: part/models.py:3152 templates/js/translated/part.js:2421 msgid "Requires Attachment" msgstr "" -#: part/models.py:3075 +#: part/models.py:3153 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3116 +#: part/models.py:3194 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3124 +#: part/models.py:3202 msgid "Parameter Name" msgstr "" -#: part/models.py:3128 +#: part/models.py:3206 msgid "Parameter Units" msgstr "" -#: part/models.py:3133 +#: part/models.py:3211 msgid "Parameter description" msgstr "" -#: part/models.py:3166 +#: part/models.py:3244 msgid "Parent Part" msgstr "" -#: part/models.py:3168 part/models.py:3216 part/models.py:3217 -#: templates/InvenTree/settings/settings.html:224 +#: part/models.py:3246 part/models.py:3294 part/models.py:3295 +#: templates/InvenTree/settings/settings.html:225 msgid "Parameter Template" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Data" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Parameter Value" msgstr "" -#: part/models.py:3221 templates/InvenTree/settings/settings.html:233 +#: part/models.py:3299 templates/InvenTree/settings/settings.html:234 msgid "Default Value" msgstr "" -#: part/models.py:3222 +#: part/models.py:3300 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3259 +#: part/models.py:3337 msgid "Part ID or part name" msgstr "" -#: part/models.py:3263 +#: part/models.py:3341 msgid "Unique part ID value" msgstr "" -#: part/models.py:3271 +#: part/models.py:3349 msgid "Part IPN value" msgstr "" -#: part/models.py:3274 +#: part/models.py:3352 msgid "Level" msgstr "" -#: part/models.py:3275 +#: part/models.py:3353 msgid "BOM level" msgstr "" -#: part/models.py:3344 +#: part/models.py:3422 msgid "Select parent part" msgstr "" -#: part/models.py:3352 +#: part/models.py:3430 msgid "Sub part" msgstr "" -#: part/models.py:3353 +#: part/models.py:3431 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:3359 +#: part/models.py:3437 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:3363 part/templates/part/upload_bom.html:58 +#: part/models.py:3441 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:933 templates/js/translated/bom.js:986 #: templates/js/translated/build.js:1868 #: templates/js/translated/table_filters.js:84 @@ -5236,189 +5303,189 @@ msgstr "" msgid "Optional" msgstr "" -#: part/models.py:3364 +#: part/models.py:3442 msgid "This BOM item is optional" msgstr "" -#: part/models.py:3369 templates/js/translated/bom.js:929 +#: part/models.py:3447 templates/js/translated/bom.js:929 #: templates/js/translated/bom.js:995 templates/js/translated/build.js:1859 #: templates/js/translated/table_filters.js:88 msgid "Consumable" msgstr "" -#: part/models.py:3370 +#: part/models.py:3448 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:3374 part/templates/part/upload_bom.html:55 +#: part/models.py:3452 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:3375 +#: part/models.py:3453 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:3378 +#: part/models.py:3456 msgid "BOM item reference" msgstr "" -#: part/models.py:3381 +#: part/models.py:3459 msgid "BOM item notes" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "Checksum" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "BOM line checksum" msgstr "" -#: part/models.py:3387 part/templates/part/upload_bom.html:57 +#: part/models.py:3465 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1012 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:108 msgid "Inherited" msgstr "" -#: part/models.py:3388 +#: part/models.py:3466 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:3393 part/templates/part/upload_bom.html:56 +#: part/models.py:3471 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1004 msgid "Allow Variants" msgstr "" -#: part/models.py:3394 +#: part/models.py:3472 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:3480 stock/models.py:558 +#: part/models.py:3558 stock/models.py:558 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:3489 part/models.py:3491 +#: part/models.py:3567 part/models.py:3569 msgid "Sub part must be specified" msgstr "" -#: part/models.py:3618 +#: part/models.py:3696 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:3639 +#: part/models.py:3717 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:3652 +#: part/models.py:3730 msgid "Parent BOM item" msgstr "" -#: part/models.py:3660 +#: part/models.py:3738 msgid "Substitute part" msgstr "" -#: part/models.py:3675 +#: part/models.py:3753 msgid "Part 1" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Part 2" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Select Related Part" msgstr "" -#: part/models.py:3697 +#: part/models.py:3775 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:3701 +#: part/models.py:3779 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:155 part/serializers.py:183 stock/serializers.py:183 +#: part/serializers.py:157 part/serializers.py:185 stock/serializers.py:183 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:543 +#: part/serializers.py:584 msgid "Update" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:585 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:854 +#: part/serializers.py:895 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:862 +#: part/serializers.py:903 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:863 +#: part/serializers.py:904 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:868 +#: part/serializers.py:909 msgid "Include Inherited" msgstr "" -#: part/serializers.py:869 +#: part/serializers.py:910 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:874 +#: part/serializers.py:915 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:875 +#: part/serializers.py:916 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:921 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:881 +#: part/serializers.py:922 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:962 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:922 +#: part/serializers.py:963 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:952 +#: part/serializers.py:993 msgid "No part column specified" msgstr "" -#: part/serializers.py:995 +#: part/serializers.py:1036 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:998 +#: part/serializers.py:1039 msgid "No matching part found" msgstr "" -#: part/serializers.py:1001 +#: part/serializers.py:1042 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1010 +#: part/serializers.py:1051 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1059 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1039 +#: part/serializers.py:1080 msgid "At least one BOM item is required" msgstr "" @@ -5450,7 +5517,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:267 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:290 msgid "BOM actions" msgstr "" @@ -5507,8 +5574,8 @@ msgstr "" msgid "New Part" msgstr "" -#: part/templates/part/category.html:169 part/templates/part/detail.html:366 -#: part/templates/part/detail.html:397 +#: part/templates/part/category.html:169 part/templates/part/detail.html:389 +#: part/templates/part/detail.html:420 msgid "Options" msgstr "" @@ -5556,7 +5623,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:404 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:407 msgid "Duplicate Part" msgstr "" @@ -5593,118 +5660,128 @@ msgstr "" msgid "Refresh" msgstr "" -#: part/templates/part/detail.html:59 +#: part/templates/part/detail.html:65 +msgid "Add stocktake information" +msgstr "" + +#: part/templates/part/detail.html:66 part/templates/part/part_sidebar.html:49 +#: stock/admin.py:107 templates/js/translated/stock.js:1905 +msgid "Stocktake" +msgstr "" + +#: part/templates/part/detail.html:82 msgid "Part Test Templates" msgstr "" -#: part/templates/part/detail.html:64 +#: part/templates/part/detail.html:87 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:144 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:141 +#: part/templates/part/detail.html:164 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:156 +#: part/templates/part/detail.html:179 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:160 +#: part/templates/part/detail.html:183 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:161 +#: part/templates/part/detail.html:184 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:188 +#: part/templates/part/detail.html:211 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:225 part/templates/part/part_sidebar.html:52 +#: part/templates/part/detail.html:248 part/templates/part/part_sidebar.html:57 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:229 part/templates/part/detail.html:230 +#: part/templates/part/detail.html:252 part/templates/part/detail.html:253 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:250 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:273 part/templates/part/part_sidebar.html:17 +#: report/templates/report/inventree_bill_of_materials_report.html:100 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:255 +#: part/templates/part/detail.html:278 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:259 templates/js/translated/bom.js:309 +#: part/templates/part/detail.html:282 templates/js/translated/bom.js:309 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:261 +#: part/templates/part/detail.html:284 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:271 +#: part/templates/part/detail.html:294 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:272 templates/js/translated/part.js:276 +#: part/templates/part/detail.html:295 templates/js/translated/part.js:279 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:273 +#: part/templates/part/detail.html:296 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:278 part/templates/part/detail.html:279 +#: part/templates/part/detail.html:301 part/templates/part/detail.html:302 #: templates/js/translated/bom.js:1268 templates/js/translated/bom.js:1269 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:292 +#: part/templates/part/detail.html:315 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:310 +#: part/templates/part/detail.html:333 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:337 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:360 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:353 +#: part/templates/part/detail.html:376 msgid "Part Suppliers" msgstr "" -#: part/templates/part/detail.html:383 +#: part/templates/part/detail.html:406 msgid "Part Manufacturers" msgstr "" -#: part/templates/part/detail.html:399 +#: part/templates/part/detail.html:422 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:696 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:704 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:796 msgid "Add Test Result Template" msgstr "" #: part/templates/part/import_wizard/ajax_part_upload.html:29 #: part/templates/part/import_wizard/part_upload.html:14 -msgid "Unsuffitient privileges." +msgid "Insufficient privileges." msgstr "" #: part/templates/part/import_wizard/part_upload.html:8 @@ -5715,6 +5792,34 @@ msgstr "" msgid "Import Parts from File" msgstr "" +#: part/templates/part/import_wizard/part_upload.html:31 +msgid "Requirements for part import" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "The part import file must contain the required named columns as provided in the " +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:89 +msgid "Download Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:92 +#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 +#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 +msgid "Format" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:93 +#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 +#: templates/js/translated/order.js:999 +msgid "Select file format" +msgstr "" + #: part/templates/part/part_app_base.html:12 msgid "Part List" msgstr "" @@ -5804,12 +5909,12 @@ msgstr "" #: templates/js/translated/company.js:660 #: templates/js/translated/company.js:921 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:677 templates/js/translated/part.js:755 +#: templates/js/translated/part.js:680 templates/js/translated/part.js:1026 msgid "Inactive" msgstr "" #: part/templates/part/part_base.html:165 -#: part/templates/part/part_base.html:666 +#: part/templates/part/part_base.html:680 msgid "Show Part Details" msgstr "" @@ -5837,38 +5942,38 @@ msgid "Minimum stock level" msgstr "" #: part/templates/part/part_base.html:330 templates/js/translated/bom.js:1032 -#: templates/js/translated/part.js:798 templates/js/translated/part.js:1604 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:1875 #: templates/js/translated/pricing.js:124 #: templates/js/translated/pricing.js:762 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:345 +#: part/templates/part/part_base.html:359 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:349 +#: part/templates/part/part_base.html:363 #: stock/templates/stock/item_base.html:331 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:449 +#: part/templates/part/part_base.html:463 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:495 +#: part/templates/part/part_base.html:509 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:512 +#: part/templates/part/part_base.html:526 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:564 +#: part/templates/part/part_base.html:578 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:660 +#: part/templates/part/part_base.html:674 msgid "Hide Part Details" msgstr "" @@ -5920,15 +6025,6 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" -#: part/templates/part/part_scheduling.html:13 -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:63 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:2043 templates/js/translated/pricing.js:537 -#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2516 -msgid "Date" -msgstr "" - #: part/templates/part/part_scheduling.html:14 msgid "Scheduled Quantity" msgstr "" @@ -5941,7 +6037,7 @@ msgstr "" msgid "Scheduling" msgstr "" -#: part/templates/part/part_sidebar.html:48 +#: part/templates/part/part_sidebar.html:53 msgid "Test Templates" msgstr "" @@ -5960,7 +6056,7 @@ msgstr "" #: part/templates/part/prices.html:25 stock/admin.py:106 #: stock/templates/stock/item_base.html:440 #: templates/js/translated/company.js:1039 -#: templates/js/translated/stock.js:1940 +#: templates/js/translated/stock.js:1935 msgid "Last Updated" msgstr "" @@ -6023,8 +6119,8 @@ msgstr "" msgid "Add Sell Price Break" msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:639 -#: templates/js/translated/part.js:1373 templates/js/translated/part.js:1375 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:1644 templates/js/translated/part.js:1646 msgid "No Stock" msgstr "" @@ -6087,27 +6183,32 @@ msgstr "" msgid "{title} v{version}" msgstr "" -#: part/views.py:109 +#: part/views.py:111 msgid "Match References" msgstr "" -#: part/views.py:354 +#: part/views.py:239 +#, python-brace-format +msgid "Can't import part {name} because there is no category assigned" +msgstr "" + +#: part/views.py:378 msgid "Part QR Code" msgstr "" -#: part/views.py:372 +#: part/views.py:396 msgid "Select Part Image" msgstr "" -#: part/views.py:398 +#: part/views.py:422 msgid "Updated part image" msgstr "" -#: part/views.py:401 +#: part/views.py:425 msgid "Part image not found" msgstr "" -#: part/views.py:493 +#: part/views.py:517 msgid "Part Pricing" msgstr "" @@ -6156,28 +6257,48 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:29 -#: plugin/builtin/integration/core_notifications.py:31 +#: plugin/builtin/integration/core_notifications.py:33 msgid "InvenTree contributors" msgstr "" -#: plugin/builtin/integration/core_notifications.py:30 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:32 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notificaton methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:37 -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:80 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:38 -#: plugin/builtin/integration/core_notifications.py:57 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:81 msgid "Allow sending of emails for event notifications" msgstr "" +#: plugin/builtin/integration/core_notifications.py:45 +msgid "Enable slack notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:46 +msgid "Allow sending of slack channel messages for event notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:51 +msgid "Slack incoming webhook url" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:52 +msgid "URL that is used to send messages to a slack channel" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:162 +msgid "Open link" +msgstr "" + #: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" @@ -6409,6 +6530,10 @@ msgstr "" msgid "Asset file description" msgstr "" +#: report/templates/report/inventree_bill_of_materials_report.html:133 +msgid "Materials needed" +msgstr "" + #: report/templates/report/inventree_build_order_base.html:146 msgid "Required For" msgstr "" @@ -6427,7 +6552,7 @@ msgstr "" #: templates/js/translated/build.js:1244 templates/js/translated/build.js:1745 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:121 templates/js/translated/order.js:3611 -#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:522 +#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:521 msgid "Serial Number" msgstr "" @@ -6459,8 +6584,9 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: stock/admin.py:87 templates/js/translated/stock.js:642 -#: templates/js/translated/stock.js:812 templates/js/translated/stock.js:2765 +#: stock/admin.py:87 templates/js/translated/part.js:749 +#: templates/js/translated/stock.js:641 templates/js/translated/stock.js:811 +#: templates/js/translated/stock.js:2760 msgid "Serial" msgstr "" @@ -6515,13 +6641,9 @@ msgstr "" msgid "Purchase Order ID" msgstr "" -#: stock/admin.py:107 templates/js/translated/stock.js:1910 -msgid "Stocktake" -msgstr "" - #: stock/admin.py:108 stock/models.py:764 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/stock.js:1924 +#: templates/js/translated/stock.js:1919 msgid "Expiry Date" msgstr "" @@ -6936,7 +7058,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2912 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2907 msgid "Install Stock Item" msgstr "" @@ -6944,7 +7066,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1561 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1560 msgid "Add Test Result" msgstr "" @@ -7117,10 +7239,6 @@ msgstr "" msgid "Stale" msgstr "" -#: stock/templates/stock/item_base.html:445 -msgid "Last Stocktake" -msgstr "" - #: stock/templates/stock/item_base.html:449 msgid "No stocktake performed" msgstr "" @@ -7394,7 +7512,8 @@ msgstr "" #: templates/InvenTree/notifications/notifications.html:10 #: templates/InvenTree/notifications/sidebar.html:5 -#: templates/InvenTree/settings/sidebar.html:17 templates/notifications.html:5 +#: templates/InvenTree/settings/sidebar.html:17 +#: templates/InvenTree/settings/sidebar.html:35 templates/notifications.html:5 msgid "Notifications" msgstr "" @@ -7475,6 +7594,14 @@ msgstr "" msgid "Open in new tab" msgstr "" +#: templates/InvenTree/settings/notifications.html:9 +msgid "Global Notification Settings" +msgstr "" + +#: templates/InvenTree/settings/notifications.html:18 +msgid "Slug" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -7492,7 +7619,7 @@ msgid "Part Parameter Templates" msgstr "" #: templates/InvenTree/settings/plugin.html:10 -#: templates/InvenTree/settings/sidebar.html:55 +#: templates/InvenTree/settings/sidebar.html:57 msgid "Plugin Settings" msgstr "" @@ -7501,7 +7628,7 @@ msgid "Changing the settings below require you to immediately restart the server msgstr "" #: templates/InvenTree/settings/plugin.html:38 -#: templates/InvenTree/settings/sidebar.html:57 +#: templates/InvenTree/settings/sidebar.html:59 msgid "Plugins" msgstr "" @@ -7669,67 +7796,67 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:117 +#: templates/InvenTree/settings/settings.html:118 msgid "Edit Plugin Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:119 +#: templates/InvenTree/settings/settings.html:120 msgid "Edit Notification Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:122 +#: templates/InvenTree/settings/settings.html:123 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:124 +#: templates/InvenTree/settings/settings.html:125 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:214 +#: templates/InvenTree/settings/settings.html:215 msgid "No category parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:236 -#: templates/InvenTree/settings/settings.html:361 -msgid "Edit Template" -msgstr "" - #: templates/InvenTree/settings/settings.html:237 #: templates/InvenTree/settings/settings.html:362 +msgid "Edit Template" +msgstr "" + +#: templates/InvenTree/settings/settings.html:238 +#: templates/InvenTree/settings/settings.html:363 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:277 +#: templates/InvenTree/settings/settings.html:278 msgid "Create Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:322 +#: templates/InvenTree/settings/settings.html:323 msgid "Delete Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:334 +#: templates/InvenTree/settings/settings.html:335 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:338 +#: templates/InvenTree/settings/settings.html:339 #: templates/js/translated/news.js:29 #: templates/js/translated/notification.js:36 msgid "ID" msgstr "" -#: templates/InvenTree/settings/settings.html:380 +#: templates/InvenTree/settings/settings.html:381 msgid "Create Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:399 +#: templates/InvenTree/settings/settings.html:400 msgid "Edit Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:413 +#: templates/InvenTree/settings/settings.html:414 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/InvenTree/settings/settings.html:421 +#: templates/InvenTree/settings/settings.html:422 msgid "Delete Part Parameter Template" msgstr "" @@ -7758,12 +7885,12 @@ msgid "Search Settings" msgstr "" #: templates/InvenTree/settings/sidebar.html:19 -#: templates/InvenTree/settings/sidebar.html:37 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Label Printing" msgstr "" #: templates/InvenTree/settings/sidebar.html:21 -#: templates/InvenTree/settings/sidebar.html:39 +#: templates/InvenTree/settings/sidebar.html:41 msgid "Reporting" msgstr "" @@ -7775,7 +7902,7 @@ msgstr "" msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:43 +#: templates/InvenTree/settings/sidebar.html:45 msgid "Categories" msgstr "" @@ -7945,64 +8072,64 @@ msgstr "" msgid "Do you really want to remove the selected email address?" msgstr "" -#: templates/InvenTree/settings/user_display.html:28 +#: templates/InvenTree/settings/user_display.html:29 msgid "Theme Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:38 +#: templates/InvenTree/settings/user_display.html:39 msgid "Select theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:49 +#: templates/InvenTree/settings/user_display.html:50 msgid "Set Theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:57 +#: templates/InvenTree/settings/user_display.html:58 msgid "Language Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:66 +#: templates/InvenTree/settings/user_display.html:67 msgid "Select language" msgstr "" -#: templates/InvenTree/settings/user_display.html:82 +#: templates/InvenTree/settings/user_display.html:83 #, python-format msgid "%(lang_translated)s%% translated" msgstr "" -#: templates/InvenTree/settings/user_display.html:84 +#: templates/InvenTree/settings/user_display.html:85 msgid "No translations available" msgstr "" -#: templates/InvenTree/settings/user_display.html:91 +#: templates/InvenTree/settings/user_display.html:92 msgid "Set Language" msgstr "" -#: templates/InvenTree/settings/user_display.html:94 +#: templates/InvenTree/settings/user_display.html:95 msgid "Some languages are not complete" msgstr "" -#: templates/InvenTree/settings/user_display.html:96 +#: templates/InvenTree/settings/user_display.html:97 msgid "Show only sufficent" msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "and hidden." msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "Show them too" msgstr "" -#: templates/InvenTree/settings/user_display.html:105 +#: templates/InvenTree/settings/user_display.html:106 msgid "Help the translation efforts!" msgstr "" -#: templates/InvenTree/settings/user_display.html:106 +#: templates/InvenTree/settings/user_display.html:107 msgid "Native language translation of the web application is community contributed via crowdin. Contributions are welcomed and encouraged." msgstr "" -#: templates/InvenTree/settings/user_display.html:107 +#: templates/InvenTree/settings/user_display.html:108 msgid "InvenTree Translation Project" msgstr "" @@ -8080,7 +8207,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:646 +#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:649 msgid "Confirm" msgstr "Potvrdit" @@ -8313,7 +8440,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 -#: templates/js/translated/part.js:2445 +#: templates/js/translated/part.js:2726 msgid "Minimum Quantity" msgstr "" @@ -8466,7 +8593,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1089 +#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1088 msgid "Remove stock item" msgstr "" @@ -8548,16 +8675,6 @@ msgstr "" msgid "Download BOM Template" msgstr "" -#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 -#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 -msgid "Format" -msgstr "" - -#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 -#: templates/js/translated/order.js:999 -msgid "Select file format" -msgstr "" - #: templates/js/translated/bom.js:320 msgid "Multi Level BOM" msgstr "" @@ -8688,7 +8805,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:1145 templates/js/translated/build.js:1923 -#: templates/js/translated/part.js:790 templates/js/translated/part.js:1572 +#: templates/js/translated/part.js:1061 templates/js/translated/part.js:1843 msgid "Includes variant stock" msgstr "" @@ -8773,13 +8890,13 @@ msgstr "" msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:317 templates/js/translated/stock.js:95 -#: templates/js/translated/stock.js:237 +#: templates/js/translated/build.js:317 templates/js/translated/stock.js:94 +#: templates/js/translated/stock.js:236 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:319 templates/js/translated/stock.js:97 -#: templates/js/translated/stock.js:239 +#: templates/js/translated/build.js:319 templates/js/translated/stock.js:96 +#: templates/js/translated/stock.js:238 msgid "Latest serial number" msgstr "" @@ -8987,9 +9104,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1466 -#: templates/js/translated/part.js:2003 templates/js/translated/stock.js:1725 -#: templates/js/translated/stock.js:2428 +#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1737 +#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1724 +#: templates/js/translated/stock.js:2423 msgid "Select" msgstr "" @@ -9001,7 +9118,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2695 +#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2690 msgid "No user information" msgstr "" @@ -9074,34 +9191,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:652 -#: templates/js/translated/company.js:913 templates/js/translated/part.js:661 -#: templates/js/translated/part.js:747 +#: templates/js/translated/company.js:913 templates/js/translated/part.js:664 +#: templates/js/translated/part.js:1018 msgid "Template part" msgstr "" #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:917 templates/js/translated/part.js:665 -#: templates/js/translated/part.js:751 +#: templates/js/translated/company.js:917 templates/js/translated/part.js:668 +#: templates/js/translated/part.js:1022 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:784 templates/js/translated/part.js:870 +#: templates/js/translated/company.js:784 templates/js/translated/part.js:1141 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:821 templates/js/translated/part.js:912 +#: templates/js/translated/company.js:821 templates/js/translated/part.js:1183 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:822 templates/js/translated/part.js:913 +#: templates/js/translated/company.js:822 templates/js/translated/part.js:1184 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:841 templates/js/translated/part.js:930 +#: templates/js/translated/company.js:841 templates/js/translated/part.js:1201 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:852 templates/js/translated/part.js:942 +#: templates/js/translated/company.js:852 templates/js/translated/part.js:1213 msgid "Delete Parameter" msgstr "" @@ -9181,61 +9298,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:369 templates/js/translated/forms.js:384 -#: templates/js/translated/forms.js:398 templates/js/translated/forms.js:412 +#: templates/js/translated/forms.js:372 templates/js/translated/forms.js:387 +#: templates/js/translated/forms.js:401 templates/js/translated/forms.js:415 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:371 +#: templates/js/translated/forms.js:374 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:386 +#: templates/js/translated/forms.js:389 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:400 +#: templates/js/translated/forms.js:403 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:414 +#: templates/js/translated/forms.js:417 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:672 +#: templates/js/translated/forms.js:675 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:773 +#: templates/js/translated/forms.js:776 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1266 templates/modals.html:19 +#: templates/js/translated/forms.js:1269 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1703 +#: templates/js/translated/forms.js:1706 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1919 templates/search.html:29 +#: templates/js/translated/forms.js:1922 templates/search.html:29 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2172 +#: templates/js/translated/forms.js:2175 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:2640 +#: templates/js/translated/forms.js:2643 msgid "Select Columns" msgstr "" @@ -9256,7 +9373,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1113 +#: templates/js/translated/stock.js:1112 msgid "Select Stock Items" msgstr "" @@ -9590,7 +9707,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2184 +#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2179 msgid "Stock Status" msgstr "" @@ -9614,7 +9731,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1982 templates/js/translated/part.js:983 +#: templates/js/translated/order.js:1982 templates/js/translated/part.js:1254 msgid "No purchase orders found" msgstr "" @@ -9647,8 +9764,8 @@ msgstr "" msgid "Total" msgstr "" -#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1085 -#: templates/js/translated/part.js:1137 +#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1356 +#: templates/js/translated/part.js:1408 msgid "Total Quantity" msgstr "" @@ -9666,11 +9783,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2388 templates/js/translated/order.js:3900 -#: templates/js/translated/part.js:1121 +#: templates/js/translated/part.js:1392 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1166 +#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1437 msgid "Receive line item" msgstr "" @@ -9791,7 +9908,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3623 templates/js/translated/order.js:3712 -#: templates/js/translated/stock.js:1641 +#: templates/js/translated/stock.js:1640 msgid "Shipped to customer" msgstr "" @@ -9835,334 +9952,358 @@ msgstr "" msgid "No matching lines" msgstr "" -#: templates/js/translated/part.js:52 +#: templates/js/translated/part.js:55 msgid "Part Attributes" msgstr "" -#: templates/js/translated/part.js:56 +#: templates/js/translated/part.js:59 msgid "Part Creation Options" msgstr "" -#: templates/js/translated/part.js:60 +#: templates/js/translated/part.js:63 msgid "Part Duplication Options" msgstr "" -#: templates/js/translated/part.js:64 +#: templates/js/translated/part.js:67 msgid "Supplier Options" msgstr "" -#: templates/js/translated/part.js:78 +#: templates/js/translated/part.js:81 msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:168 +#: templates/js/translated/part.js:171 msgid "Create Initial Stock" msgstr "" -#: templates/js/translated/part.js:169 +#: templates/js/translated/part.js:172 msgid "Create an initial stock item for this part" msgstr "" -#: templates/js/translated/part.js:176 +#: templates/js/translated/part.js:179 msgid "Initial Stock Quantity" msgstr "" -#: templates/js/translated/part.js:177 +#: templates/js/translated/part.js:180 msgid "Specify initial stock quantity for this part" msgstr "" -#: templates/js/translated/part.js:184 +#: templates/js/translated/part.js:187 msgid "Select destination stock location" msgstr "" -#: templates/js/translated/part.js:202 +#: templates/js/translated/part.js:205 msgid "Copy Category Parameters" msgstr "" -#: templates/js/translated/part.js:203 +#: templates/js/translated/part.js:206 msgid "Copy parameter templates from selected part category" msgstr "" -#: templates/js/translated/part.js:211 +#: templates/js/translated/part.js:214 msgid "Add Supplier Data" msgstr "" -#: templates/js/translated/part.js:212 +#: templates/js/translated/part.js:215 msgid "Create initial supplier data for this part" msgstr "" -#: templates/js/translated/part.js:268 +#: templates/js/translated/part.js:271 msgid "Copy Image" msgstr "" -#: templates/js/translated/part.js:269 +#: templates/js/translated/part.js:272 msgid "Copy image from original part" msgstr "" -#: templates/js/translated/part.js:277 +#: templates/js/translated/part.js:280 msgid "Copy bill of materials from original part" msgstr "" -#: templates/js/translated/part.js:284 +#: templates/js/translated/part.js:287 msgid "Copy Parameters" msgstr "" -#: templates/js/translated/part.js:285 +#: templates/js/translated/part.js:288 msgid "Copy parameter data from original part" msgstr "" -#: templates/js/translated/part.js:298 +#: templates/js/translated/part.js:301 msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:313 templates/js/translated/stock.js:122 +#: templates/js/translated/part.js:316 templates/js/translated/stock.js:121 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:329 +#: templates/js/translated/part.js:332 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:342 +#: templates/js/translated/part.js:345 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:347 +#: templates/js/translated/part.js:350 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:359 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:360 +#: templates/js/translated/part.js:363 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:368 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:394 +#: templates/js/translated/part.js:397 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:396 +#: templates/js/translated/part.js:399 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:407 +#: templates/js/translated/part.js:410 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:459 +#: templates/js/translated/part.js:462 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:460 +#: templates/js/translated/part.js:463 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:477 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:476 +#: templates/js/translated/part.js:479 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:477 +#: templates/js/translated/part.js:480 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:478 +#: templates/js/translated/part.js:481 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:485 +#: templates/js/translated/part.js:488 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:521 +#: templates/js/translated/part.js:524 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:523 +#: templates/js/translated/part.js:526 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:531 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:530 +#: templates/js/translated/part.js:533 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:547 +#: templates/js/translated/part.js:550 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:560 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:560 +#: templates/js/translated/part.js:563 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:585 +#: templates/js/translated/part.js:588 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1554 +#: templates/js/translated/part.js:612 templates/js/translated/part.js:1825 #: templates/js/translated/table_filters.js:488 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:622 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:653 templates/js/translated/part.js:739 +#: templates/js/translated/part.js:656 templates/js/translated/part.js:1010 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:657 templates/js/translated/part.js:743 +#: templates/js/translated/part.js:660 templates/js/translated/part.js:1014 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:669 +#: templates/js/translated/part.js:672 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:673 +#: templates/js/translated/part.js:676 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:815 +#: templates/js/translated/part.js:761 +msgid "Stock item has not been checked recently" +msgstr "" + +#: templates/js/translated/part.js:769 +msgid "Update item" +msgstr "" + +#: templates/js/translated/part.js:770 +msgid "Delete item" +msgstr "" + +#: templates/js/translated/part.js:871 +msgid "No stocktake information available" +msgstr "" + +#: templates/js/translated/part.js:910 templates/js/translated/part.js:933 +msgid "Edit Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:914 templates/js/translated/part.js:945 +msgid "Delete Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:1086 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1236 +#: templates/js/translated/part.js:1507 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1260 +#: templates/js/translated/part.js:1531 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1327 templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1598 templates/js/translated/part.js:1936 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1521 +#: templates/js/translated/part.js:1792 msgid "No category" msgstr "" -#: templates/js/translated/part.js:1552 +#: templates/js/translated/part.js:1823 msgid "No stock" msgstr "" -#: templates/js/translated/part.js:1576 +#: templates/js/translated/part.js:1847 msgid "Allocated to build orders" msgstr "" -#: templates/js/translated/part.js:1580 +#: templates/js/translated/part.js:1851 msgid "Allocated to sales orders" msgstr "" -#: templates/js/translated/part.js:1679 templates/js/translated/part.js:1922 -#: templates/js/translated/stock.js:2387 +#: templates/js/translated/part.js:1960 templates/js/translated/part.js:2203 +#: templates/js/translated/stock.js:2382 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1695 +#: templates/js/translated/part.js:1976 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1761 +#: templates/js/translated/part.js:2042 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1766 +#: templates/js/translated/part.js:2047 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1771 +#: templates/js/translated/part.js:2052 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1784 +#: templates/js/translated/part.js:2065 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1942 templates/js/translated/stock.js:2407 +#: templates/js/translated/part.js:2223 templates/js/translated/stock.js:2402 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2022 +#: templates/js/translated/part.js:2303 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2038 +#: templates/js/translated/part.js:2319 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2383 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2153 templates/js/translated/stock.js:1338 +#: templates/js/translated/part.js:2434 templates/js/translated/stock.js:1337 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2154 templates/js/translated/stock.js:1339 -#: templates/js/translated/stock.js:1599 +#: templates/js/translated/part.js:2435 templates/js/translated/stock.js:1338 +#: templates/js/translated/stock.js:1598 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2441 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2182 +#: templates/js/translated/part.js:2463 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2196 +#: templates/js/translated/part.js:2477 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2277 templates/js/translated/part.js:2278 +#: templates/js/translated/part.js:2558 templates/js/translated/part.js:2559 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2280 +#: templates/js/translated/part.js:2561 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:2286 +#: templates/js/translated/part.js:2567 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:2336 +#: templates/js/translated/part.js:2617 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2623 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:2438 +#: templates/js/translated/part.js:2719 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2454 +#: templates/js/translated/part.js:2735 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:2499 +#: templates/js/translated/part.js:2780 msgid "Minimum Stock Level" msgstr "" @@ -10290,388 +10431,388 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:74 +#: templates/js/translated/stock.js:73 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:104 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:114 +#: templates/js/translated/stock.js:113 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:148 +#: templates/js/translated/stock.js:147 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:163 +#: templates/js/translated/stock.js:162 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:177 +#: templates/js/translated/stock.js:176 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:184 +#: templates/js/translated/stock.js:183 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:193 +#: templates/js/translated/stock.js:192 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:197 +#: templates/js/translated/stock.js:196 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:201 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:256 +#: templates/js/translated/stock.js:255 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:298 +#: templates/js/translated/stock.js:297 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:304 +#: templates/js/translated/stock.js:303 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:368 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:389 +#: templates/js/translated/stock.js:388 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:405 +#: templates/js/translated/stock.js:404 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:410 +#: templates/js/translated/stock.js:409 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:431 +#: templates/js/translated/stock.js:430 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:481 +#: templates/js/translated/stock.js:480 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:494 +#: templates/js/translated/stock.js:493 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:519 +#: templates/js/translated/stock.js:518 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:523 templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:522 templates/js/translated/stock.js:523 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:540 +#: templates/js/translated/stock.js:539 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:560 +#: templates/js/translated/stock.js:559 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:568 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:692 +#: templates/js/translated/stock.js:691 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:693 +#: templates/js/translated/stock.js:692 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:770 +#: templates/js/translated/stock.js:769 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:771 +#: templates/js/translated/stock.js:770 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:773 +#: templates/js/translated/stock.js:772 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:774 +#: templates/js/translated/stock.js:773 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:863 +#: templates/js/translated/stock.js:862 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:864 +#: templates/js/translated/stock.js:863 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:958 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:959 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:966 +#: templates/js/translated/stock.js:965 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:967 +#: templates/js/translated/stock.js:966 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:971 +#: templates/js/translated/stock.js:970 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:972 +#: templates/js/translated/stock.js:971 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:976 +#: templates/js/translated/stock.js:975 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:977 users/models.py:220 +#: templates/js/translated/stock.js:976 users/models.py:221 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:981 +#: templates/js/translated/stock.js:980 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1114 +#: templates/js/translated/stock.js:1113 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1141 +#: templates/js/translated/stock.js:1140 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1277 +#: templates/js/translated/stock.js:1276 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1279 +#: templates/js/translated/stock.js:1278 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1284 +#: templates/js/translated/stock.js:1283 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1331 +#: templates/js/translated/stock.js:1330 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1334 +#: templates/js/translated/stock.js:1333 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1360 +#: templates/js/translated/stock.js:1359 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1417 +#: templates/js/translated/stock.js:1416 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1582 +#: templates/js/translated/stock.js:1581 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1604 +#: templates/js/translated/stock.js:1603 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1633 +#: templates/js/translated/stock.js:1632 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1637 +#: templates/js/translated/stock.js:1636 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1645 +#: templates/js/translated/stock.js:1644 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1651 +#: templates/js/translated/stock.js:1650 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1820 +#: templates/js/translated/stock.js:1815 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1825 +#: templates/js/translated/stock.js:1820 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1828 +#: templates/js/translated/stock.js:1823 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1831 +#: templates/js/translated/stock.js:1826 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1833 +#: templates/js/translated/stock.js:1828 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1835 +#: templates/js/translated/stock.js:1830 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1838 +#: templates/js/translated/stock.js:1833 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1837 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1844 +#: templates/js/translated/stock.js:1839 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1846 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1853 +#: templates/js/translated/stock.js:1848 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1855 +#: templates/js/translated/stock.js:1850 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1859 +#: templates/js/translated/stock.js:1854 #: templates/js/translated/table_filters.js:216 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1989 +#: templates/js/translated/stock.js:1984 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2026 +#: templates/js/translated/stock.js:2021 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2199 +#: templates/js/translated/stock.js:2194 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2213 +#: templates/js/translated/stock.js:2208 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2214 +#: templates/js/translated/stock.js:2209 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2446 +#: templates/js/translated/stock.js:2441 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2536 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2557 +#: templates/js/translated/stock.js:2552 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2579 +#: templates/js/translated/stock.js:2574 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2598 +#: templates/js/translated/stock.js:2593 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2617 +#: templates/js/translated/stock.js:2612 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2635 +#: templates/js/translated/stock.js:2630 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2658 +#: templates/js/translated/stock.js:2653 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2666 +#: templates/js/translated/stock.js:2661 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2737 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2793 templates/js/translated/stock.js:2829 +#: templates/js/translated/stock.js:2788 templates/js/translated/stock.js:2824 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2845 +#: templates/js/translated/stock.js:2840 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2866 +#: templates/js/translated/stock.js:2861 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2867 +#: templates/js/translated/stock.js:2862 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2869 +#: templates/js/translated/stock.js:2864 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2870 +#: templates/js/translated/stock.js:2865 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:2866 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2872 +#: templates/js/translated/stock.js:2867 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2885 +#: templates/js/translated/stock.js:2880 msgid "Select part to install" msgstr "" @@ -10696,7 +10837,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:92 -#: templates/js/translated/table_filters.js:516 +#: templates/js/translated/table_filters.js:520 msgid "Has Pricing" msgstr "" @@ -10912,6 +11053,10 @@ msgstr "" msgid "Purchasable" msgstr "" +#: templates/js/translated/table_filters.js:504 +msgid "Has stocktake entries" +msgstr "" + #: templates/js/translated/tables.js:70 msgid "Display calendar view" msgstr "" @@ -11206,35 +11351,35 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:207 +#: users/models.py:208 msgid "Permission set" msgstr "Nastavení oprávnění" -#: users/models.py:215 +#: users/models.py:216 msgid "Group" msgstr "Skupina" -#: users/models.py:218 +#: users/models.py:219 msgid "View" msgstr "Zobrazit" -#: users/models.py:218 +#: users/models.py:219 msgid "Permission to view items" msgstr "Oprávnění k zobrazení položek" -#: users/models.py:220 +#: users/models.py:221 msgid "Permission to add items" msgstr "Oprávnění přidat položky" -#: users/models.py:222 +#: users/models.py:223 msgid "Change" msgstr "Změnit" -#: users/models.py:222 +#: users/models.py:223 msgid "Permissions to edit items" msgstr "Oprávnění k úpravě položek" -#: users/models.py:224 +#: users/models.py:225 msgid "Permission to delete items" msgstr "Oprávnění k odstranění položek" diff --git a/InvenTree/locale/da/LC_MESSAGES/django.po b/InvenTree/locale/da/LC_MESSAGES/django.po index 3ca9a7add0..df8184e462 100644 --- a/InvenTree/locale/da/LC_MESSAGES/django.po +++ b/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: 2022-12-30 20:46+0000\n" -"PO-Revision-Date: 2022-12-31 11:30\n" +"POT-Creation-Date: 2023-01-01 11:05+0000\n" +"PO-Revision-Date: 2023-01-01 11:26\n" "Last-Translator: \n" "Language-Team: Danish\n" "Language: da_DK\n" @@ -34,7 +34,7 @@ msgstr "Angiv dato" #: company/templates/company/sidebar.html:25 order/models.py:943 #: order/templates/order/po_sidebar.html:11 #: order/templates/order/so_sidebar.html:17 part/admin.py:27 -#: part/templates/part/part_sidebar.html:57 +#: part/models.py:2932 part/templates/part/part_sidebar.html:62 #: report/templates/report/inventree_build_order_base.html:172 #: stock/admin.py:103 stock/models.py:2061 stock/models.py:2169 #: stock/serializers.py:321 stock/serializers.py:454 stock/serializers.py:535 @@ -44,8 +44,8 @@ msgstr "Angiv dato" #: templates/js/translated/company.js:1023 #: templates/js/translated/order.js:2435 templates/js/translated/order.js:2569 #: templates/js/translated/order.js:3067 templates/js/translated/order.js:4004 -#: templates/js/translated/order.js:4385 templates/js/translated/stock.js:1413 -#: templates/js/translated/stock.js:2020 +#: templates/js/translated/order.js:4385 templates/js/translated/part.js:882 +#: templates/js/translated/stock.js:1412 templates/js/translated/stock.js:2015 msgid "Notes" msgstr "Bemærkninger" @@ -204,18 +204,18 @@ msgstr "Vedhæftning" msgid "Select file to attach" msgstr "Vælg fil, der skal vedhæftes" -#: InvenTree/models.py:412 common/models.py:2366 company/models.py:129 +#: InvenTree/models.py:412 common/models.py:2373 company/models.py:129 #: company/models.py:281 company/models.py:516 order/models.py:85 -#: order/models.py:1282 part/admin.py:25 part/models.py:865 +#: order/models.py:1282 part/admin.py:25 part/models.py:866 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: stock/admin.py:102 templates/js/translated/company.js:692 #: templates/js/translated/company.js:1012 -#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1615 +#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1886 msgid "Link" msgstr "Link" -#: InvenTree/models.py:413 build/models.py:290 part/models.py:866 +#: InvenTree/models.py:413 build/models.py:290 part/models.py:867 #: stock/models.py:716 msgid "Link to external URL" msgstr "Link til ekstern URL" @@ -229,12 +229,13 @@ msgstr "Kommentar" msgid "File comment" msgstr "Fil kommentar" -#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1810 -#: common/models.py:1811 common/models.py:2034 common/models.py:2035 -#: common/models.py:2296 common/models.py:2297 part/models.py:2948 -#: part/models.py:2968 plugin/models.py:264 plugin/models.py:265 +#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1817 +#: common/models.py:1818 common/models.py:2041 common/models.py:2042 +#: common/models.py:2303 common/models.py:2304 part/models.py:2940 +#: part/models.py:3026 part/models.py:3046 plugin/models.py:264 +#: plugin/models.py:265 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2689 +#: templates/js/translated/stock.js:2684 msgid "User" msgstr "Bruger" @@ -271,19 +272,20 @@ msgstr "Fejl ved omdøbning af fil" msgid "Invalid choice" msgstr "Ugyldigt valg" -#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2020 -#: company/models.py:363 label/models.py:101 part/models.py:809 -#: part/models.py:3123 plugin/models.py:94 report/models.py:152 +#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2027 +#: company/models.py:363 label/models.py:101 part/models.py:810 +#: part/models.py:3201 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 +#: templates/InvenTree/settings/notifications.html:17 #: templates/InvenTree/settings/plugin.html:60 #: templates/InvenTree/settings/plugin.html:104 #: templates/InvenTree/settings/plugin_settings.html:23 -#: templates/InvenTree/settings/settings.html:344 +#: templates/InvenTree/settings/settings.html:345 #: templates/js/translated/company.js:581 #: templates/js/translated/company.js:794 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:711 templates/js/translated/part.js:880 -#: templates/js/translated/part.js:2010 templates/js/translated/stock.js:2434 +#: templates/js/translated/part.js:982 templates/js/translated/part.js:1151 +#: templates/js/translated/part.js:2291 templates/js/translated/stock.js:2429 msgid "Name" msgstr "Navn" @@ -292,24 +294,25 @@ msgstr "Navn" #: company/models.py:522 company/templates/company/company_base.html:72 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:108 label/models.py:108 -#: order/models.py:83 part/admin.py:141 part/admin.py:222 part/models.py:832 -#: part/models.py:3132 part/templates/part/category.html:75 +#: order/models.py:83 part/admin.py:174 part/admin.py:255 part/models.py:833 +#: part/models.py:3210 part/templates/part/category.html:75 #: part/templates/part/part_base.html:172 #: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/admin.py:25 stock/templates/stock/location.html:117 +#: templates/InvenTree/settings/notifications.html:19 #: templates/InvenTree/settings/plugin_settings.html:28 -#: templates/InvenTree/settings/settings.html:355 +#: templates/InvenTree/settings/settings.html:356 #: templates/js/translated/bom.js:592 templates/js/translated/bom.js:895 #: templates/js/translated/build.js:2596 templates/js/translated/company.js:445 #: templates/js/translated/company.js:703 #: templates/js/translated/company.js:987 templates/js/translated/order.js:2030 #: templates/js/translated/order.js:2267 templates/js/translated/order.js:2845 -#: templates/js/translated/part.js:773 templates/js/translated/part.js:1223 -#: templates/js/translated/part.js:1497 templates/js/translated/part.js:2046 -#: templates/js/translated/part.js:2121 templates/js/translated/stock.js:1787 -#: templates/js/translated/stock.js:2466 templates/js/translated/stock.js:2526 +#: templates/js/translated/part.js:1044 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1768 templates/js/translated/part.js:2327 +#: templates/js/translated/part.js:2402 templates/js/translated/stock.js:1782 +#: templates/js/translated/stock.js:2461 templates/js/translated/stock.js:2521 msgid "Description" msgstr "Beskrivelse" @@ -322,7 +325,7 @@ msgid "parent" msgstr "overordnet" #: InvenTree/models.py:580 InvenTree/models.py:581 -#: templates/js/translated/part.js:2055 templates/js/translated/stock.js:2475 +#: templates/js/translated/part.js:2336 templates/js/translated/stock.js:2470 msgid "Path" msgstr "Sti" @@ -354,7 +357,7 @@ msgstr "Serverfejl" msgid "An error has been logged by the server." msgstr "En fejl blev logget af serveren." -#: InvenTree/serializers.py:58 part/models.py:3468 +#: InvenTree/serializers.py:58 part/models.py:3546 msgid "Must be a valid number" msgstr "Skal være et gyldigt tal" @@ -421,107 +424,107 @@ 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/settings.py:639 +#: InvenTree/settings.py:642 msgid "Czech" msgstr "Tjekkisk" -#: InvenTree/settings.py:640 +#: InvenTree/settings.py:643 msgid "Danish" msgstr "Dansk" -#: InvenTree/settings.py:641 +#: InvenTree/settings.py:644 msgid "German" msgstr "Tysk" -#: InvenTree/settings.py:642 +#: InvenTree/settings.py:645 msgid "Greek" msgstr "Græsk" -#: InvenTree/settings.py:643 +#: InvenTree/settings.py:646 msgid "English" msgstr "Engelsk" -#: InvenTree/settings.py:644 +#: InvenTree/settings.py:647 msgid "Spanish" msgstr "Spansk" -#: InvenTree/settings.py:645 +#: InvenTree/settings.py:648 msgid "Spanish (Mexican)" msgstr "Spansk (Mexikansk)" -#: InvenTree/settings.py:646 +#: InvenTree/settings.py:649 msgid "Farsi / Persian" msgstr "Farsi / Persisk" -#: InvenTree/settings.py:647 +#: InvenTree/settings.py:650 msgid "French" msgstr "Fransk" -#: InvenTree/settings.py:648 +#: InvenTree/settings.py:651 msgid "Hebrew" msgstr "Hebraisk" -#: InvenTree/settings.py:649 +#: InvenTree/settings.py:652 msgid "Hungarian" msgstr "Ungarsk" -#: InvenTree/settings.py:650 +#: InvenTree/settings.py:653 msgid "Italian" msgstr "Italiensk" -#: InvenTree/settings.py:651 +#: InvenTree/settings.py:654 msgid "Japanese" msgstr "Japansk" -#: InvenTree/settings.py:652 +#: InvenTree/settings.py:655 msgid "Korean" msgstr "Koreansk" -#: InvenTree/settings.py:653 +#: InvenTree/settings.py:656 msgid "Dutch" msgstr "Hollandsk" -#: InvenTree/settings.py:654 +#: InvenTree/settings.py:657 msgid "Norwegian" msgstr "Norsk" -#: InvenTree/settings.py:655 +#: InvenTree/settings.py:658 msgid "Polish" msgstr "Polsk" -#: InvenTree/settings.py:656 +#: InvenTree/settings.py:659 msgid "Portuguese" msgstr "Portugisisk" -#: InvenTree/settings.py:657 +#: InvenTree/settings.py:660 msgid "Portuguese (Brazilian)" msgstr "Portugisisk (Brasilien)" -#: InvenTree/settings.py:658 +#: InvenTree/settings.py:661 msgid "Russian" msgstr "Russisk" -#: InvenTree/settings.py:659 +#: InvenTree/settings.py:662 msgid "Slovenian" msgstr "" -#: InvenTree/settings.py:660 +#: InvenTree/settings.py:663 msgid "Swedish" msgstr "Svensk" -#: InvenTree/settings.py:661 +#: InvenTree/settings.py:664 msgid "Thai" msgstr "Thailandsk" -#: InvenTree/settings.py:662 +#: InvenTree/settings.py:665 msgid "Turkish" msgstr "Tyrkisk" -#: InvenTree/settings.py:663 +#: InvenTree/settings.py:666 msgid "Vietnamese" msgstr "Vietnamesisk" -#: InvenTree/settings.py:664 +#: InvenTree/settings.py:667 msgid "Chinese" msgstr "Kinesisk" @@ -652,7 +655,7 @@ msgstr "Opdel fra overordnet element" msgid "Split child item" msgstr "Opdel underordnet element" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2124 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2119 msgid "Merged stock items" msgstr "Flettede lagervarer" @@ -756,7 +759,7 @@ msgstr "Produktionsordre" #: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:141 -#: templates/InvenTree/settings/sidebar.html:47 +#: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:254 users/models.py:41 msgid "Build Orders" msgstr "Produktionsordrer" @@ -766,8 +769,9 @@ msgid "Build Order Reference" msgstr "Produktionsordre reference" #: build/models.py:155 order/models.py:241 order/models.py:651 -#: order/models.py:941 part/admin.py:224 part/models.py:3378 +#: order/models.py:941 part/admin.py:257 part/models.py:3456 #: part/templates/part/upload_bom.html:54 +#: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 #: templates/js/translated/bom.js:729 templates/js/translated/bom.js:905 @@ -793,13 +797,15 @@ msgstr "Produktionsordre som er tildelt denne produktion" #: build/models.py:180 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:684 #: order/models.py:1038 order/models.py:1149 order/models.py:1150 -#: part/models.py:381 part/models.py:2781 part/models.py:2894 -#: part/models.py:2909 part/models.py:2928 part/models.py:2946 -#: part/models.py:3045 part/models.py:3166 part/models.py:3258 -#: part/models.py:3343 part/models.py:3659 part/serializers.py:853 -#: part/templates/part/part_app_base.html:8 +#: part/models.py:382 part/models.py:2799 part/models.py:2912 +#: part/models.py:2972 part/models.py:2987 part/models.py:3006 +#: part/models.py:3024 part/models.py:3123 part/models.py:3244 +#: part/models.py:3336 part/models.py:3421 part/models.py:3737 +#: part/serializers.py:894 part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 +#: report/templates/report/inventree_bill_of_materials_report.html:110 +#: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_base.html:109 #: report/templates/report/inventree_po_report.html:89 #: report/templates/report/inventree_so_report.html:90 stock/serializers.py:90 @@ -819,12 +825,12 @@ msgstr "Produktionsordre som er tildelt denne produktion" #: templates/js/translated/order.js:1172 templates/js/translated/order.js:1676 #: templates/js/translated/order.js:2252 templates/js/translated/order.js:3199 #: templates/js/translated/order.js:3595 templates/js/translated/order.js:3825 -#: templates/js/translated/part.js:1208 templates/js/translated/part.js:1280 -#: templates/js/translated/part.js:1474 templates/js/translated/pricing.js:102 -#: templates/js/translated/stock.js:618 templates/js/translated/stock.js:783 -#: templates/js/translated/stock.js:993 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2552 templates/js/translated/stock.js:2747 -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/part.js:1479 templates/js/translated/part.js:1551 +#: templates/js/translated/part.js:1745 templates/js/translated/pricing.js:102 +#: templates/js/translated/stock.js:617 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:992 templates/js/translated/stock.js:1738 +#: templates/js/translated/stock.js:2547 templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2879 msgid "Part" msgstr "" @@ -890,7 +896,7 @@ msgstr "" msgid "Batch code for this build output" msgstr "Batch kode til dette produktions output" -#: build/models.py:252 order/models.py:87 part/models.py:1001 +#: build/models.py:252 order/models.py:87 part/models.py:1002 #: part/templates/part/part_base.html:318 templates/js/translated/order.js:2858 msgid "Creation Date" msgstr "" @@ -923,7 +929,7 @@ msgstr "" #: build/models.py:283 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:101 #: order/templates/order/order_base.html:185 -#: order/templates/order/sales_order_base.html:183 part/models.py:1005 +#: order/templates/order/sales_order_base.html:183 part/models.py:1006 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2658 templates/js/translated/order.js:2064 msgid "Responsible" @@ -936,7 +942,7 @@ msgstr "" #: build/models.py:289 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:188 -#: part/templates/part/part_base.html:376 stock/models.py:714 +#: part/templates/part/part_base.html:390 stock/models.py:714 #: stock/templates/stock/item_base.html:203 msgid "External Link" msgstr "" @@ -1011,8 +1017,8 @@ msgstr "" #: templates/js/translated/order.js:107 templates/js/translated/order.js:3200 #: templates/js/translated/order.js:3502 templates/js/translated/order.js:3507 #: templates/js/translated/order.js:3602 templates/js/translated/order.js:3694 -#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 -#: templates/js/translated/stock.js:2625 +#: templates/js/translated/part.js:803 templates/js/translated/stock.js:618 +#: templates/js/translated/stock.js:783 templates/js/translated/stock.js:2620 msgid "Stock Item" msgstr "" @@ -1022,12 +1028,13 @@ msgstr "" #: build/models.py:1364 build/serializers.py:192 #: build/templates/build/build_base.html:85 -#: build/templates/build/detail.html:34 common/models.py:1842 +#: build/templates/build/detail.html:34 common/models.py:1849 #: order/models.py:934 order/models.py:1460 order/serializers.py:1206 -#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:223 -#: part/forms.py:40 part/models.py:3359 +#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:256 +#: part/forms.py:40 part/models.py:2919 part/models.py:3437 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 +#: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_base.html:113 #: report/templates/report/inventree_po_report.html:90 #: report/templates/report/inventree_so_report.html:91 @@ -1049,13 +1056,14 @@ msgstr "" #: templates/js/translated/order.js:3201 templates/js/translated/order.js:3521 #: templates/js/translated/order.js:3608 templates/js/translated/order.js:3700 #: templates/js/translated/order.js:3847 templates/js/translated/order.js:4338 -#: templates/js/translated/part.js:1078 templates/js/translated/part.js:2568 +#: templates/js/translated/part.js:805 templates/js/translated/part.js:876 +#: templates/js/translated/part.js:1349 templates/js/translated/part.js:2849 #: templates/js/translated/pricing.js:114 #: templates/js/translated/pricing.js:207 #: templates/js/translated/pricing.js:255 -#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:490 -#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:814 -#: templates/js/translated/stock.js:2674 templates/js/translated/stock.js:2759 +#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:489 +#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:813 +#: templates/js/translated/stock.js:2669 templates/js/translated/stock.js:2754 msgid "Quantity" msgstr "" @@ -1097,8 +1105,8 @@ msgid "Enter quantity for build output" msgstr "" #: build/serializers.py:207 build/serializers.py:683 order/models.py:327 -#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:645 -#: part/serializers.py:1016 stock/models.py:574 stock/models.py:1312 +#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:686 +#: part/serializers.py:1057 stock/models.py:574 stock/models.py:1312 #: stock/serializers.py:294 msgid "Quantity must be greater than zero" msgstr "" @@ -1113,7 +1121,7 @@ msgstr "" #: build/serializers.py:231 order/serializers.py:463 order/serializers.py:1210 #: stock/serializers.py:303 templates/js/translated/order.js:1545 -#: templates/js/translated/stock.js:303 templates/js/translated/stock.js:491 +#: templates/js/translated/stock.js:302 templates/js/translated/stock.js:490 msgid "Serial Numbers" msgstr "" @@ -1146,9 +1154,10 @@ msgstr "" #: templates/js/translated/build.js:1759 templates/js/translated/order.js:1572 #: templates/js/translated/order.js:3514 templates/js/translated/order.js:3619 #: templates/js/translated/order.js:3627 templates/js/translated/order.js:3708 -#: templates/js/translated/part.js:183 templates/js/translated/stock.js:620 -#: templates/js/translated/stock.js:785 templates/js/translated/stock.js:995 -#: templates/js/translated/stock.js:1895 templates/js/translated/stock.js:2566 +#: templates/js/translated/part.js:186 templates/js/translated/part.js:804 +#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 +#: templates/js/translated/stock.js:994 templates/js/translated/stock.js:1890 +#: templates/js/translated/stock.js:2561 msgid "Location" msgstr "" @@ -1162,8 +1171,8 @@ msgstr "" #: stock/templates/stock/item_base.html:421 #: templates/js/translated/barcode.js:237 templates/js/translated/build.js:2630 #: templates/js/translated/order.js:1681 templates/js/translated/order.js:2034 -#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1870 -#: templates/js/translated/stock.js:2643 templates/js/translated/stock.js:2775 +#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:2638 templates/js/translated/stock.js:2770 msgid "Status" msgstr "" @@ -1239,8 +1248,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:595 build/serializers.py:640 part/models.py:3495 -#: part/models.py:3651 +#: build/serializers.py:595 build/serializers.py:640 part/models.py:3573 +#: part/models.py:3729 msgid "BOM Item" msgstr "" @@ -1406,7 +1415,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2670 templates/js/translated/order.js:2051 #: templates/js/translated/order.js:2382 templates/js/translated/order.js:2866 -#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1093 +#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1364 msgid "Target Date" msgstr "" @@ -1484,8 +1493,8 @@ msgstr "" #: stock/templates/stock/item_base.html:168 #: templates/js/translated/build.js:1250 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:1884 -#: templates/js/translated/stock.js:2782 +#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:1879 +#: templates/js/translated/stock.js:2777 #: templates/js/translated/table_filters.js:179 #: templates/js/translated/table_filters.js:270 msgid "Batch" @@ -1617,8 +1626,8 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:86 #: order/templates/order/sales_order_detail.html:140 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:210 -#: part/templates/part/part_sidebar.html:55 stock/templates/stock/item.html:117 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:233 +#: part/templates/part/part_sidebar.html:60 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" msgstr "" @@ -1635,7 +1644,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:316 +#: build/templates/build/index.html:18 part/templates/part/detail.html:339 msgid "New Build Order" msgstr "" @@ -1928,9 +1937,9 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1014 part/admin.py:41 part/models.py:3168 +#: common/models.py:1014 part/admin.py:41 part/models.py:3246 #: report/models.py:158 templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:504 +#: templates/js/translated/table_filters.js:508 msgid "Template" msgstr "" @@ -1938,7 +1947,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:1021 part/admin.py:37 part/admin.py:229 part/models.py:957 +#: common/models.py:1021 part/admin.py:37 part/admin.py:262 part/models.py:958 #: templates/js/translated/bom.js:1595 #: templates/js/translated/table_filters.js:196 #: templates/js/translated/table_filters.js:467 @@ -1949,7 +1958,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1028 part/admin.py:38 part/models.py:963 +#: common/models.py:1028 part/admin.py:38 part/models.py:964 #: templates/js/translated/table_filters.js:475 msgid "Component" msgstr "" @@ -1958,7 +1967,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1035 part/admin.py:39 part/models.py:974 +#: common/models.py:1035 part/admin.py:39 part/models.py:975 msgid "Purchaseable" msgstr "" @@ -1966,7 +1975,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1042 part/admin.py:40 part/models.py:979 +#: common/models.py:1042 part/admin.py:40 part/models.py:980 #: templates/js/translated/table_filters.js:496 msgid "Salable" msgstr "" @@ -1975,10 +1984,10 @@ msgstr "" msgid "Parts are salable by default" msgstr "" -#: common/models.py:1049 part/admin.py:42 part/models.py:969 +#: common/models.py:1049 part/admin.py:42 part/models.py:970 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:120 -#: templates/js/translated/table_filters.js:508 +#: templates/js/translated/table_filters.js:512 msgid "Trackable" msgstr "" @@ -1986,10 +1995,10 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1056 part/admin.py:43 part/models.py:989 +#: common/models.py:1056 part/admin.py:43 part/models.py:990 #: part/templates/part/part_base.html:156 #: templates/js/translated/table_filters.js:42 -#: templates/js/translated/table_filters.js:512 +#: templates/js/translated/table_filters.js:516 msgid "Virtual" msgstr "" @@ -2417,7 +2426,7 @@ msgstr "" msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1461 common/models.py:1803 +#: common/models.py:1461 common/models.py:1810 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -2749,41 +2758,50 @@ msgstr "" msgid "Display part scheduling information" msgstr "" -#: common/models.py:1778 -msgid "Table String Length" +#: common/models.py:1778 part/templates/part/detail.html:61 +#: templates/js/translated/part.js:822 +msgid "Part Stocktake" msgstr "" #: common/models.py:1779 +msgid "Display part stocktake information" +msgstr "" + +#: common/models.py:1785 +msgid "Table String Length" +msgstr "" + +#: common/models.py:1786 msgid "Maximimum length limit for strings displayed in table views" msgstr "" -#: common/models.py:1843 +#: common/models.py:1850 msgid "Price break quantity" msgstr "" -#: common/models.py:1850 company/serializers.py:393 order/models.py:975 -#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1145 +#: common/models.py:1857 company/serializers.py:393 order/models.py:975 +#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1416 #: templates/js/translated/pricing.js:354 msgid "Price" msgstr "" -#: common/models.py:1851 +#: common/models.py:1858 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2011 common/models.py:2189 +#: common/models.py:2018 common/models.py:2196 msgid "Endpoint" msgstr "" -#: common/models.py:2012 +#: common/models.py:2019 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2021 +#: common/models.py:2028 msgid "Name for this webhook" msgstr "" -#: common/models.py:2026 part/admin.py:36 part/models.py:984 +#: common/models.py:2033 part/admin.py:36 part/models.py:985 #: plugin/models.py:100 templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:116 #: templates/js/translated/table_filters.js:336 @@ -2791,131 +2809,133 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:2027 +#: common/models.py:2034 msgid "Is this webhook active" msgstr "" -#: common/models.py:2041 +#: common/models.py:2048 msgid "Token" msgstr "" -#: common/models.py:2042 +#: common/models.py:2049 msgid "Token for access" msgstr "" -#: common/models.py:2049 +#: common/models.py:2056 msgid "Secret" msgstr "" -#: common/models.py:2050 +#: common/models.py:2057 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2156 +#: common/models.py:2163 msgid "Message ID" msgstr "" -#: common/models.py:2157 +#: common/models.py:2164 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2165 +#: common/models.py:2172 msgid "Host" msgstr "" -#: common/models.py:2166 +#: common/models.py:2173 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2173 +#: common/models.py:2180 msgid "Header" msgstr "" -#: common/models.py:2174 +#: common/models.py:2181 msgid "Header of this message" msgstr "" -#: common/models.py:2180 +#: common/models.py:2187 msgid "Body" msgstr "" -#: common/models.py:2181 +#: common/models.py:2188 msgid "Body of this message" msgstr "" -#: common/models.py:2190 +#: common/models.py:2197 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2195 +#: common/models.py:2202 msgid "Worked on" msgstr "" -#: common/models.py:2196 +#: common/models.py:2203 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2355 +#: common/models.py:2362 msgid "Id" msgstr "" -#: common/models.py:2361 templates/js/translated/news.js:35 +#: common/models.py:2368 templates/js/translated/news.js:35 msgid "Title" msgstr "" -#: common/models.py:2371 templates/js/translated/news.js:51 +#: common/models.py:2378 templates/js/translated/news.js:51 msgid "Published" msgstr "" -#: common/models.py:2376 templates/InvenTree/settings/plugin.html:62 +#: common/models.py:2383 templates/InvenTree/settings/plugin.html:62 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/news.js:47 msgid "Author" msgstr "" -#: common/models.py:2381 templates/js/translated/news.js:43 +#: common/models.py:2388 templates/js/translated/news.js:43 msgid "Summary" msgstr "" -#: common/models.py:2386 +#: common/models.py:2393 msgid "Read" msgstr "" -#: common/models.py:2387 +#: common/models.py:2394 msgid "Was this news item read?" msgstr "" -#: common/notifications.py:293 +#: common/notifications.py:294 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:295 +#: common/notifications.py:296 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:301 +#: common/notifications.py:302 msgid "Items Received" msgstr "" -#: common/notifications.py:303 +#: common/notifications.py:304 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:415 +#: common/notifications.py:416 msgid "Error raised by plugin" msgstr "" #: common/views.py:85 order/templates/order/order_wizard/po_upload.html:51 #: order/templates/order/purchase_order_detail.html:25 order/views.py:102 -#: part/views.py:107 templates/patterns/wizard/upload.html:37 +#: part/templates/part/import_wizard/part_upload.html:58 part/views.py:109 +#: templates/patterns/wizard/upload.html:37 msgid "Upload File" msgstr "" #: common/views.py:86 order/templates/order/order_wizard/match_fields.html:52 #: order/views.py:103 #: part/templates/part/import_wizard/ajax_match_fields.html:45 -#: part/views.py:108 templates/patterns/wizard/match_fields.html:51 +#: part/templates/part/import_wizard/match_fields.html:52 part/views.py:110 +#: templates/patterns/wizard/match_fields.html:51 msgid "Match Fields" msgstr "" @@ -2934,7 +2954,9 @@ msgstr "" #: common/views.py:509 order/templates/order/order_wizard/match_fields.html:27 #: order/templates/order/order_wizard/match_parts.html:19 #: order/templates/order/order_wizard/po_upload.html:49 +#: part/templates/part/import_wizard/match_fields.html:27 #: part/templates/part/import_wizard/match_references.html:19 +#: part/templates/part/import_wizard/part_upload.html:56 #: templates/patterns/wizard/match_fields.html:26 #: templates/patterns/wizard/upload.html:35 msgid "Previous Step" @@ -2995,7 +3017,7 @@ msgstr "" msgid "Link to external company information" msgstr "" -#: company/models.py:140 part/models.py:878 +#: company/models.py:140 part/models.py:879 msgid "Image" msgstr "" @@ -3028,8 +3050,8 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:153 company/serializers.py:399 -#: company/templates/company/company_base.html:107 part/models.py:2762 -#: part/serializers.py:154 part/serializers.py:182 stock/serializers.py:182 +#: company/templates/company/company_base.html:107 part/models.py:2780 +#: part/serializers.py:156 part/serializers.py:184 stock/serializers.py:182 #: templates/InvenTree/settings/pricing.html:64 msgid "Currency" msgstr "" @@ -3055,12 +3077,12 @@ msgstr "" #: templates/js/translated/company.js:433 #: templates/js/translated/company.js:534 #: templates/js/translated/company.js:669 -#: templates/js/translated/company.js:957 templates/js/translated/part.js:238 +#: templates/js/translated/company.js:957 templates/js/translated/part.js:241 #: templates/js/translated/table_filters.js:439 msgid "Manufacturer" msgstr "" -#: company/models.py:269 templates/js/translated/part.js:239 +#: company/models.py:269 templates/js/translated/part.js:242 msgid "Select manufacturer" msgstr "" @@ -3070,11 +3092,11 @@ msgstr "" #: templates/js/translated/company.js:533 #: templates/js/translated/company.js:685 #: templates/js/translated/company.js:976 templates/js/translated/order.js:2286 -#: templates/js/translated/part.js:249 templates/js/translated/part.js:1067 +#: templates/js/translated/part.js:252 templates/js/translated/part.js:1338 msgid "MPN" msgstr "" -#: company/models.py:276 templates/js/translated/part.js:250 +#: company/models.py:276 templates/js/translated/part.js:253 msgid "Manufacturer Part Number" msgstr "" @@ -3100,8 +3122,8 @@ msgstr "" #: company/models.py:370 #: report/templates/report/inventree_test_report_base.html:95 #: stock/models.py:2156 templates/js/translated/company.js:582 -#: templates/js/translated/company.js:800 templates/js/translated/part.js:889 -#: templates/js/translated/stock.js:1399 +#: templates/js/translated/company.js:800 templates/js/translated/part.js:1160 +#: templates/js/translated/stock.js:1398 msgid "Value" msgstr "" @@ -3109,10 +3131,10 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:377 part/admin.py:26 part/models.py:951 -#: part/models.py:3128 part/templates/part/part_base.html:286 -#: templates/InvenTree/settings/settings.html:349 -#: templates/js/translated/company.js:806 templates/js/translated/part.js:895 +#: company/models.py:377 part/admin.py:26 part/models.py:952 +#: part/models.py:3206 part/templates/part/part_base.html:286 +#: templates/InvenTree/settings/settings.html:350 +#: templates/js/translated/company.js:806 templates/js/translated/part.js:1166 msgid "Units" msgstr "" @@ -3132,24 +3154,24 @@ msgstr "" #: templates/js/translated/company.js:304 #: templates/js/translated/company.js:437 #: templates/js/translated/company.js:930 templates/js/translated/order.js:2017 -#: templates/js/translated/part.js:219 templates/js/translated/part.js:1035 +#: templates/js/translated/part.js:222 templates/js/translated/part.js:1306 #: templates/js/translated/pricing.js:231 #: templates/js/translated/table_filters.js:443 msgid "Supplier" msgstr "" -#: company/models.py:498 templates/js/translated/part.js:220 +#: company/models.py:498 templates/js/translated/part.js:223 msgid "Select supplier" msgstr "" #: company/models.py:503 company/templates/company/supplier_part.html:146 #: part/bom.py:253 part/bom.py:281 templates/js/translated/company.js:303 -#: templates/js/translated/order.js:2273 templates/js/translated/part.js:230 -#: templates/js/translated/part.js:1053 templates/js/translated/pricing.js:243 +#: templates/js/translated/order.js:2273 templates/js/translated/part.js:233 +#: templates/js/translated/part.js:1324 templates/js/translated/pricing.js:243 msgid "SKU" msgstr "" -#: company/models.py:504 templates/js/translated/part.js:231 +#: company/models.py:504 templates/js/translated/part.js:234 msgid "Supplier stock keeping unit" msgstr "" @@ -3166,24 +3188,25 @@ msgid "Supplier part description" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:181 -#: part/admin.py:225 part/models.py:3381 part/templates/part/upload_bom.html:59 +#: part/admin.py:258 part/models.py:3459 part/templates/part/upload_bom.html:59 +#: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:397 msgid "Note" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "base cost" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:534 company/templates/company/supplier_part.html:167 #: stock/admin.py:101 stock/models.py:682 #: stock/templates/stock/item_base.html:243 -#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2016 +#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2011 msgid "Packaging" msgstr "" @@ -3196,7 +3219,7 @@ msgstr "" #: templates/js/translated/company.js:997 templates/js/translated/order.js:826 #: templates/js/translated/order.js:1253 templates/js/translated/order.js:1508 #: templates/js/translated/order.js:2317 templates/js/translated/order.js:2334 -#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1137 +#: templates/js/translated/part.js:1356 templates/js/translated/part.js:1408 msgid "Pack Quantity" msgstr "" @@ -3204,7 +3227,7 @@ msgstr "" msgid "Unit quantity supplied in a single pack" msgstr "" -#: company/models.py:544 part/models.py:1863 +#: company/models.py:544 part/models.py:1869 msgid "multiple" msgstr "" @@ -3216,8 +3239,8 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:1118 templates/js/translated/build.js:1883 -#: templates/js/translated/build.js:2770 templates/js/translated/part.js:623 -#: templates/js/translated/part.js:626 +#: templates/js/translated/build.js:2770 templates/js/translated/part.js:626 +#: templates/js/translated/part.js:629 #: templates/js/translated/table_filters.js:206 msgid "Available" msgstr "" @@ -3300,7 +3323,7 @@ msgstr "" #: stock/templates/stock/item_base.html:399 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:429 templates/js/translated/order.js:2827 -#: templates/js/translated/stock.js:2607 +#: templates/js/translated/stock.js:2602 #: templates/js/translated/table_filters.js:447 msgid "Customer" msgstr "" @@ -3314,7 +3337,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:206 -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:525 msgid "Remove Image" msgstr "" @@ -3323,19 +3346,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:209 -#: part/templates/part/part_base.html:514 +#: part/templates/part/part_base.html:528 #: templates/InvenTree/settings/user.html:87 #: templates/InvenTree/settings/user.html:149 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:238 -#: part/templates/part/part_base.html:543 +#: part/templates/part/part_base.html:557 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:253 -#: part/templates/part/part_base.html:598 +#: part/templates/part/part_base.html:612 msgid "Download Image" msgstr "" @@ -3351,7 +3374,7 @@ msgstr "" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:357 +#: part/templates/part/detail.html:380 msgid "New Supplier Part" msgstr "" @@ -3380,7 +3403,7 @@ msgstr "" msgid "Create new manufacturer part" msgstr "" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:387 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:410 msgid "New Manufacturer Part" msgstr "" @@ -3394,9 +3417,9 @@ msgstr "" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:35 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:35 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:200 -#: templates/InvenTree/settings/sidebar.html:49 +#: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:293 templates/navbar.html:50 #: users/models.py:42 msgid "Purchase Orders" @@ -3417,9 +3440,9 @@ msgstr "" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:39 +#: part/templates/part/detail.html:130 part/templates/part/part_sidebar.html:39 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:220 -#: templates/InvenTree/settings/sidebar.html:51 +#: templates/InvenTree/settings/sidebar.html:53 #: templates/js/translated/search.js:317 templates/navbar.html:61 #: users/models.py:43 msgid "Sales Orders" @@ -3451,7 +3474,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:221 -#: part/templates/part/detail.html:87 part/templates/part/part_base.html:85 +#: part/templates/part/detail.html:110 part/templates/part/part_base.html:85 msgid "Order part" msgstr "" @@ -3482,28 +3505,28 @@ msgid "Suppliers" msgstr "" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:368 +#: part/templates/part/detail.html:391 msgid "Delete supplier parts" msgstr "" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:369 part/templates/part/detail.html:399 -#: templates/js/translated/forms.js:455 templates/js/translated/helpers.js:38 -#: templates/js/translated/part.js:351 templates/js/translated/stock.js:188 -#: users/models.py:224 +#: part/templates/part/detail.html:392 part/templates/part/detail.html:422 +#: templates/js/translated/forms.js:458 templates/js/translated/helpers.js:38 +#: templates/js/translated/part.js:354 templates/js/translated/stock.js:187 +#: users/models.py:225 msgid "Delete" msgstr "" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:184 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:207 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:189 +#: part/templates/part/detail.html:212 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:62 msgid "New Parameter" @@ -3514,7 +3537,7 @@ msgid "Delete parameters" msgstr "" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:825 +#: part/templates/part/detail.html:865 msgid "Add Parameter" msgstr "" @@ -3538,7 +3561,7 @@ msgstr "" #: company/templates/company/supplier_part.html:24 stock/models.py:665 #: stock/templates/stock/item_base.html:236 #: templates/js/translated/company.js:946 templates/js/translated/order.js:1173 -#: templates/js/translated/stock.js:1974 +#: templates/js/translated/stock.js:1969 msgid "Supplier Part" msgstr "" @@ -3578,7 +3601,7 @@ msgstr "" #: company/templates/company/supplier_part.html:56 #: company/templates/company/supplier_part.html:57 #: company/templates/company/supplier_part.html:222 -#: part/templates/part/detail.html:88 +#: part/templates/part/detail.html:111 msgid "Order Part" msgstr "" @@ -3630,7 +3653,7 @@ msgstr "" #: company/templates/company/supplier_part.html:204 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:198 -#: templates/js/translated/stock.js:467 +#: templates/js/translated/stock.js:466 msgid "New Stock Item" msgstr "" @@ -3662,10 +3685,10 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 -#: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/part.js:777 templates/js/translated/part.js:1378 -#: templates/js/translated/part.js:1534 templates/js/translated/stock.js:994 -#: templates/js/translated/stock.js:1799 templates/navbar.html:31 +#: templates/InvenTree/settings/sidebar.html:47 +#: templates/js/translated/part.js:1048 templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1805 templates/js/translated/stock.js:993 +#: templates/js/translated/stock.js:1794 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3680,7 +3703,7 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:29 #: part/templates/part/part_sidebar.html:30 -#: templates/InvenTree/settings/sidebar.html:35 +#: templates/InvenTree/settings/sidebar.html:37 msgid "Pricing" msgstr "" @@ -3692,7 +3715,7 @@ msgstr "" #: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:155 templates/js/translated/search.js:225 -#: templates/js/translated/stock.js:2484 users/models.py:40 +#: templates/js/translated/stock.js:2479 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3801,9 +3824,9 @@ msgstr "" #: stock/templates/stock/item_base.html:182 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:619 templates/js/translated/order.js:1174 -#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1012 -#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1954 -#: templates/js/translated/stock.js:2588 +#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1283 +#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1949 +#: templates/js/translated/stock.js:2583 msgid "Purchase Order" msgstr "" @@ -3973,7 +3996,7 @@ msgstr "" #: order/models.py:1046 order/templates/order/order_base.html:178 #: templates/js/translated/order.js:1679 templates/js/translated/order.js:2404 -#: templates/js/translated/part.js:1129 templates/js/translated/part.js:1161 +#: templates/js/translated/part.js:1400 templates/js/translated/part.js:1432 #: templates/js/translated/table_filters.js:358 msgid "Received" msgstr "" @@ -3984,7 +4007,7 @@ msgstr "" #: order/models.py:1054 stock/models.py:800 stock/serializers.py:173 #: stock/templates/stock/item_base.html:189 -#: templates/js/translated/stock.js:2005 +#: templates/js/translated/stock.js:2000 msgid "Purchase Price" msgstr "" @@ -4350,18 +4373,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:9 #: part/templates/part/import_wizard/ajax_match_fields.html:9 +#: part/templates/part/import_wizard/match_fields.html:9 #: templates/patterns/wizard/match_fields.html:8 msgid "Missing selections for the following required columns" msgstr "" #: order/templates/order/order_wizard/match_fields.html:20 #: part/templates/part/import_wizard/ajax_match_fields.html:20 +#: part/templates/part/import_wizard/match_fields.html:20 #: templates/patterns/wizard/match_fields.html:19 msgid "Duplicate selections found, see below. Fix them then retry submitting." msgstr "" #: order/templates/order/order_wizard/match_fields.html:29 #: order/templates/order/order_wizard/match_parts.html:21 +#: part/templates/part/import_wizard/match_fields.html:29 #: part/templates/part/import_wizard/match_references.html:21 #: templates/patterns/wizard/match_fields.html:28 msgid "Submit Selections" @@ -4369,18 +4395,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:35 #: part/templates/part/import_wizard/ajax_match_fields.html:28 +#: part/templates/part/import_wizard/match_fields.html:35 #: templates/patterns/wizard/match_fields.html:34 msgid "File Fields" msgstr "" #: order/templates/order/order_wizard/match_fields.html:42 #: part/templates/part/import_wizard/ajax_match_fields.html:35 +#: part/templates/part/import_wizard/match_fields.html:42 #: templates/patterns/wizard/match_fields.html:41 msgid "Remove column" msgstr "" #: order/templates/order/order_wizard/match_fields.html:60 #: part/templates/part/import_wizard/ajax_match_fields.html:53 +#: part/templates/part/import_wizard/match_fields.html:60 #: templates/patterns/wizard/match_fields.html:59 msgid "Duplicate selection" msgstr "" @@ -4389,12 +4418,13 @@ msgstr "" #: order/templates/order/order_wizard/match_parts.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: 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:102 templates/js/translated/build.js:485 #: templates/js/translated/build.js:641 templates/js/translated/build.js:2088 #: templates/js/translated/order.js:1122 templates/js/translated/order.js:1624 -#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:657 -#: templates/js/translated/stock.js:825 +#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:824 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4429,6 +4459,7 @@ msgstr "" #: order/templates/order/order_wizard/po_upload.html:27 #: part/templates/part/import_wizard/ajax_part_upload.html:10 +#: part/templates/part/import_wizard/part_upload.html:26 #: templates/patterns/wizard/upload.html:13 #, python-format msgid "Step %(step)s of %(count)s" @@ -4567,12 +4598,12 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:19 part/admin.py:219 part/models.py:3262 stock/admin.py:84 +#: part/admin.py:19 part/admin.py:252 part/models.py:3340 stock/admin.py:84 #: templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/admin.py:20 part/admin.py:221 part/models.py:3266 stock/admin.py:85 +#: part/admin.py:20 part/admin.py:254 part/models.py:3344 stock/admin.py:85 msgid "Part Name" msgstr "" @@ -4580,32 +4611,32 @@ msgstr "" msgid "Part Description" msgstr "" -#: part/admin.py:22 part/models.py:852 part/templates/part/part_base.html:272 -#: templates/js/translated/part.js:763 templates/js/translated/part.js:1491 -#: templates/js/translated/stock.js:1765 +#: part/admin.py:22 part/models.py:853 part/templates/part/part_base.html:272 +#: templates/js/translated/part.js:1034 templates/js/translated/part.js:1762 +#: templates/js/translated/stock.js:1760 msgid "IPN" msgstr "" -#: part/admin.py:23 part/models.py:860 part/templates/part/part_base.html:279 -#: report/models.py:171 templates/js/translated/part.js:768 +#: part/admin.py:23 part/models.py:861 part/templates/part/part_base.html:279 +#: report/models.py:171 templates/js/translated/part.js:1039 msgid "Revision" msgstr "" -#: part/admin.py:24 part/admin.py:145 part/models.py:838 +#: part/admin.py:24 part/admin.py:178 part/models.py:839 #: part/templates/part/category.html:87 part/templates/part/part_base.html:300 msgid "Keywords" msgstr "" -#: part/admin.py:28 part/admin.py:139 +#: part/admin.py:28 part/admin.py:172 #: templates/js/translated/model_renderers.js:338 msgid "Category ID" msgstr "" -#: part/admin.py:29 part/admin.py:140 +#: part/admin.py:29 part/admin.py:173 msgid "Category Name" msgstr "" -#: part/admin.py:30 part/admin.py:144 +#: part/admin.py:30 part/admin.py:177 msgid "Default Location ID" msgstr "" @@ -4613,7 +4644,7 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:33 part/models.py:944 part/templates/part/part_base.html:206 +#: part/admin.py:33 part/models.py:945 part/templates/part/part_base.html:206 msgid "Minimum Stock" msgstr "" @@ -4625,8 +4656,8 @@ msgstr "" #: part/admin.py:48 part/bom.py:145 part/templates/part/part_base.html:213 #: templates/js/translated/bom.js:1156 templates/js/translated/build.js:1935 -#: templates/js/translated/part.js:613 templates/js/translated/part.js:633 -#: templates/js/translated/part.js:1381 templates/js/translated/part.js:1559 +#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 +#: templates/js/translated/part.js:1652 templates/js/translated/part.js:1830 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4642,115 +4673,115 @@ msgid "Allocated" msgstr "" #: part/admin.py:51 part/templates/part/part_base.html:244 -#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 -#: templates/js/translated/part.js:1385 templates/js/translated/part.js:1566 +#: templates/js/translated/part.js:619 templates/js/translated/part.js:639 +#: templates/js/translated/part.js:1656 templates/js/translated/part.js:1837 msgid "Building" msgstr "" -#: part/admin.py:52 part/models.py:2846 +#: part/admin.py:52 part/models.py:2864 msgid "Minimum Cost" msgstr "" -#: part/admin.py:53 part/models.py:2852 +#: part/admin.py:53 part/models.py:2870 msgid "Maximum Cost" msgstr "" -#: part/admin.py:142 part/admin.py:216 stock/admin.py:26 stock/admin.py:98 +#: part/admin.py:175 part/admin.py:249 stock/admin.py:26 stock/admin.py:98 msgid "Parent ID" msgstr "" -#: part/admin.py:143 part/admin.py:218 stock/admin.py:27 +#: part/admin.py:176 part/admin.py:251 stock/admin.py:27 msgid "Parent Name" msgstr "" -#: part/admin.py:146 part/templates/part/category.html:81 +#: part/admin.py:179 part/templates/part/category.html:81 #: part/templates/part/category.html:94 msgid "Category Path" msgstr "" -#: part/admin.py:149 part/models.py:382 part/templates/part/cat_link.html:3 +#: part/admin.py:182 part/models.py:383 part/templates/part/cat_link.html:3 #: part/templates/part/category.html:23 part/templates/part/category.html:134 #: part/templates/part/category.html:154 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:84 -#: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:2065 templates/js/translated/search.js:146 +#: templates/InvenTree/settings/sidebar.html:43 +#: templates/js/translated/part.js:2346 templates/js/translated/search.js:146 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" -#: part/admin.py:211 +#: part/admin.py:244 msgid "BOM Level" msgstr "" -#: part/admin.py:213 +#: part/admin.py:246 msgid "BOM Item ID" msgstr "" -#: part/admin.py:217 +#: part/admin.py:250 msgid "Parent IPN" msgstr "" -#: part/admin.py:220 part/models.py:3270 +#: part/admin.py:253 part/models.py:3348 msgid "Part IPN" msgstr "" -#: part/admin.py:226 templates/js/translated/pricing.js:91 +#: part/admin.py:259 templates/js/translated/pricing.js:91 #: templates/js/translated/pricing.js:732 msgid "Minimum Price" msgstr "" -#: part/admin.py:227 templates/js/translated/pricing.js:86 +#: part/admin.py:260 templates/js/translated/pricing.js:86 #: templates/js/translated/pricing.js:740 msgid "Maximum Price" msgstr "" -#: part/api.py:536 +#: part/api.py:538 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:556 +#: part/api.py:558 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:574 +#: part/api.py:576 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:660 +#: part/api.py:662 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:818 +#: part/api.py:820 msgid "Valid" msgstr "" -#: part/api.py:819 +#: part/api.py:821 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:825 +#: part/api.py:827 msgid "This option must be selected" msgstr "" -#: part/api.py:1265 +#: part/api.py:1281 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1269 +#: part/api.py:1285 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1284 +#: part/api.py:1300 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1315 part/api.py:1319 part/api.py:1334 part/api.py:1338 +#: part/api.py:1331 part/api.py:1335 part/api.py:1350 part/api.py:1354 msgid "This field is required" msgstr "" -#: part/bom.py:142 part/models.py:116 part/models.py:887 -#: part/templates/part/category.html:109 part/templates/part/part_base.html:360 +#: part/bom.py:142 part/models.py:116 part/models.py:888 +#: part/templates/part/category.html:109 part/templates/part/part_base.html:374 msgid "Default Location" msgstr "" @@ -4801,7 +4832,7 @@ msgstr "" msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:159 part/models.py:3211 part/templates/part/category.html:16 +#: part/models.py:159 part/models.py:3289 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -4812,423 +4843,459 @@ msgstr "" msgid "Part Categories" msgstr "" -#: part/models.py:468 +#: part/models.py:469 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:538 part/models.py:550 +#: part/models.py:539 part/models.py:551 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:640 +#: part/models.py:641 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:771 +#: part/models.py:772 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:776 +#: part/models.py:777 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:790 +#: part/models.py:791 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:808 part/models.py:3267 +#: part/models.py:809 part/models.py:3345 msgid "Part name" msgstr "" -#: part/models.py:815 +#: part/models.py:816 msgid "Is Template" msgstr "" -#: part/models.py:816 +#: part/models.py:817 msgid "Is this part a template part?" msgstr "" -#: part/models.py:826 +#: part/models.py:827 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:827 +#: part/models.py:828 msgid "Variant Of" msgstr "" -#: part/models.py:833 +#: part/models.py:834 msgid "Part description" msgstr "" -#: part/models.py:839 +#: part/models.py:840 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:846 part/models.py:2966 part/models.py:3210 +#: part/models.py:847 part/models.py:3044 part/models.py:3288 #: part/templates/part/part_base.html:263 -#: templates/InvenTree/settings/settings.html:229 +#: templates/InvenTree/settings/settings.html:230 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1513 templates/js/translated/part.js:1770 +#: templates/js/translated/part.js:1784 templates/js/translated/part.js:2051 msgid "Category" msgstr "" -#: part/models.py:847 +#: part/models.py:848 msgid "Part category" msgstr "" -#: part/models.py:853 +#: part/models.py:854 msgid "Internal Part Number" msgstr "" -#: part/models.py:859 +#: part/models.py:860 msgid "Part revision or version number" msgstr "" -#: part/models.py:885 +#: part/models.py:886 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:930 part/templates/part/part_base.html:369 +#: part/models.py:931 part/templates/part/part_base.html:383 msgid "Default Supplier" msgstr "" -#: part/models.py:931 +#: part/models.py:932 msgid "Default supplier part" msgstr "" -#: part/models.py:938 +#: part/models.py:939 msgid "Default Expiry" msgstr "" -#: part/models.py:939 +#: part/models.py:940 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:945 +#: part/models.py:946 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:952 +#: part/models.py:953 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:958 +#: part/models.py:959 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:964 +#: part/models.py:965 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:970 +#: part/models.py:971 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:975 +#: part/models.py:976 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:980 +#: part/models.py:981 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:985 +#: part/models.py:986 msgid "Is this part active?" msgstr "" -#: part/models.py:990 +#: part/models.py:991 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:992 +#: part/models.py:993 msgid "Part notes" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "BOM checksum" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:997 +#: part/models.py:998 msgid "BOM checked by" msgstr "" -#: part/models.py:999 +#: part/models.py:1000 msgid "BOM checked date" msgstr "" -#: part/models.py:1003 +#: part/models.py:1004 msgid "Creation User" msgstr "" -#: part/models.py:1863 +#: part/models.py:1010 part/templates/part/part_base.html:345 +#: stock/templates/stock/item_base.html:445 +#: templates/js/translated/part.js:1901 +msgid "Last Stocktake" +msgstr "" + +#: part/models.py:1869 msgid "Sell multiple" msgstr "" -#: part/models.py:2763 +#: part/models.py:2781 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:2768 +#: part/models.py:2786 templates/js/translated/part.js:806 msgid "Updated" msgstr "" -#: part/models.py:2769 +#: part/models.py:2787 msgid "Timestamp of last pricing update" msgstr "" -#: part/models.py:2786 +#: part/models.py:2804 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:2787 +#: part/models.py:2805 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:2792 +#: part/models.py:2810 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:2793 +#: part/models.py:2811 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:2798 +#: part/models.py:2816 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:2799 +#: part/models.py:2817 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:2804 +#: part/models.py:2822 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:2805 +#: part/models.py:2823 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:2810 +#: part/models.py:2828 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:2811 +#: part/models.py:2829 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:2816 +#: part/models.py:2834 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:2817 +#: part/models.py:2835 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:2822 +#: part/models.py:2840 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:2823 +#: part/models.py:2841 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:2828 +#: part/models.py:2846 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:2829 +#: part/models.py:2847 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:2834 +#: part/models.py:2852 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:2835 +#: part/models.py:2853 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:2840 +#: part/models.py:2858 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:2841 +#: part/models.py:2859 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:2847 +#: part/models.py:2865 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:2853 +#: part/models.py:2871 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:2858 +#: part/models.py:2876 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:2859 +#: part/models.py:2877 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:2864 +#: part/models.py:2882 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:2865 +#: part/models.py:2883 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:2870 +#: part/models.py:2888 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:2871 +#: part/models.py:2889 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:2876 +#: part/models.py:2894 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:2877 +#: part/models.py:2895 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3013 +#: part/models.py:2913 +msgid "Part for stocktake" +msgstr "" + +#: part/models.py:2920 +msgid "Total available stock at time of stocktake" +msgstr "" + +#: part/models.py:2924 part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:63 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:2043 templates/js/translated/part.js:887 +#: templates/js/translated/pricing.js:537 +#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2511 +msgid "Date" +msgstr "" + +#: part/models.py:2925 +msgid "Date stocktake was performed" +msgstr "" + +#: part/models.py:2933 +msgid "Additional notes" +msgstr "" + +#: part/models.py:2941 +msgid "User who performed this stocktake" +msgstr "" + +#: part/models.py:3091 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3030 +#: part/models.py:3108 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:3050 templates/js/translated/part.js:2116 -#: templates/js/translated/stock.js:1379 +#: part/models.py:3128 templates/js/translated/part.js:2397 +#: templates/js/translated/stock.js:1378 msgid "Test Name" msgstr "" -#: part/models.py:3051 +#: part/models.py:3129 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3056 +#: part/models.py:3134 msgid "Test Description" msgstr "" -#: part/models.py:3057 +#: part/models.py:3135 msgid "Enter description for this test" msgstr "" -#: part/models.py:3062 templates/js/translated/part.js:2125 +#: part/models.py:3140 templates/js/translated/part.js:2406 #: templates/js/translated/table_filters.js:322 msgid "Required" msgstr "" -#: part/models.py:3063 +#: part/models.py:3141 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3068 templates/js/translated/part.js:2133 +#: part/models.py:3146 templates/js/translated/part.js:2414 msgid "Requires Value" msgstr "" -#: part/models.py:3069 +#: part/models.py:3147 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3074 templates/js/translated/part.js:2140 +#: part/models.py:3152 templates/js/translated/part.js:2421 msgid "Requires Attachment" msgstr "" -#: part/models.py:3075 +#: part/models.py:3153 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3116 +#: part/models.py:3194 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3124 +#: part/models.py:3202 msgid "Parameter Name" msgstr "" -#: part/models.py:3128 +#: part/models.py:3206 msgid "Parameter Units" msgstr "" -#: part/models.py:3133 +#: part/models.py:3211 msgid "Parameter description" msgstr "" -#: part/models.py:3166 +#: part/models.py:3244 msgid "Parent Part" msgstr "" -#: part/models.py:3168 part/models.py:3216 part/models.py:3217 -#: templates/InvenTree/settings/settings.html:224 +#: part/models.py:3246 part/models.py:3294 part/models.py:3295 +#: templates/InvenTree/settings/settings.html:225 msgid "Parameter Template" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Data" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Parameter Value" msgstr "" -#: part/models.py:3221 templates/InvenTree/settings/settings.html:233 +#: part/models.py:3299 templates/InvenTree/settings/settings.html:234 msgid "Default Value" msgstr "" -#: part/models.py:3222 +#: part/models.py:3300 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3259 +#: part/models.py:3337 msgid "Part ID or part name" msgstr "" -#: part/models.py:3263 +#: part/models.py:3341 msgid "Unique part ID value" msgstr "" -#: part/models.py:3271 +#: part/models.py:3349 msgid "Part IPN value" msgstr "" -#: part/models.py:3274 +#: part/models.py:3352 msgid "Level" msgstr "" -#: part/models.py:3275 +#: part/models.py:3353 msgid "BOM level" msgstr "" -#: part/models.py:3344 +#: part/models.py:3422 msgid "Select parent part" msgstr "" -#: part/models.py:3352 +#: part/models.py:3430 msgid "Sub part" msgstr "" -#: part/models.py:3353 +#: part/models.py:3431 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:3359 +#: part/models.py:3437 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:3363 part/templates/part/upload_bom.html:58 +#: part/models.py:3441 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:933 templates/js/translated/bom.js:986 #: templates/js/translated/build.js:1868 #: templates/js/translated/table_filters.js:84 @@ -5236,189 +5303,189 @@ msgstr "" msgid "Optional" msgstr "" -#: part/models.py:3364 +#: part/models.py:3442 msgid "This BOM item is optional" msgstr "" -#: part/models.py:3369 templates/js/translated/bom.js:929 +#: part/models.py:3447 templates/js/translated/bom.js:929 #: templates/js/translated/bom.js:995 templates/js/translated/build.js:1859 #: templates/js/translated/table_filters.js:88 msgid "Consumable" msgstr "" -#: part/models.py:3370 +#: part/models.py:3448 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:3374 part/templates/part/upload_bom.html:55 +#: part/models.py:3452 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:3375 +#: part/models.py:3453 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:3378 +#: part/models.py:3456 msgid "BOM item reference" msgstr "" -#: part/models.py:3381 +#: part/models.py:3459 msgid "BOM item notes" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "Checksum" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "BOM line checksum" msgstr "" -#: part/models.py:3387 part/templates/part/upload_bom.html:57 +#: part/models.py:3465 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1012 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:108 msgid "Inherited" msgstr "" -#: part/models.py:3388 +#: part/models.py:3466 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:3393 part/templates/part/upload_bom.html:56 +#: part/models.py:3471 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1004 msgid "Allow Variants" msgstr "" -#: part/models.py:3394 +#: part/models.py:3472 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:3480 stock/models.py:558 +#: part/models.py:3558 stock/models.py:558 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:3489 part/models.py:3491 +#: part/models.py:3567 part/models.py:3569 msgid "Sub part must be specified" msgstr "" -#: part/models.py:3618 +#: part/models.py:3696 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:3639 +#: part/models.py:3717 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:3652 +#: part/models.py:3730 msgid "Parent BOM item" msgstr "" -#: part/models.py:3660 +#: part/models.py:3738 msgid "Substitute part" msgstr "" -#: part/models.py:3675 +#: part/models.py:3753 msgid "Part 1" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Part 2" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Select Related Part" msgstr "" -#: part/models.py:3697 +#: part/models.py:3775 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:3701 +#: part/models.py:3779 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:155 part/serializers.py:183 stock/serializers.py:183 +#: part/serializers.py:157 part/serializers.py:185 stock/serializers.py:183 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:543 +#: part/serializers.py:584 msgid "Update" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:585 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:854 +#: part/serializers.py:895 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:862 +#: part/serializers.py:903 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:863 +#: part/serializers.py:904 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:868 +#: part/serializers.py:909 msgid "Include Inherited" msgstr "" -#: part/serializers.py:869 +#: part/serializers.py:910 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:874 +#: part/serializers.py:915 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:875 +#: part/serializers.py:916 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:921 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:881 +#: part/serializers.py:922 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:962 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:922 +#: part/serializers.py:963 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:952 +#: part/serializers.py:993 msgid "No part column specified" msgstr "" -#: part/serializers.py:995 +#: part/serializers.py:1036 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:998 +#: part/serializers.py:1039 msgid "No matching part found" msgstr "" -#: part/serializers.py:1001 +#: part/serializers.py:1042 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1010 +#: part/serializers.py:1051 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1059 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1039 +#: part/serializers.py:1080 msgid "At least one BOM item is required" msgstr "" @@ -5450,7 +5517,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:267 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:290 msgid "BOM actions" msgstr "" @@ -5507,8 +5574,8 @@ msgstr "" msgid "New Part" msgstr "" -#: part/templates/part/category.html:169 part/templates/part/detail.html:366 -#: part/templates/part/detail.html:397 +#: part/templates/part/category.html:169 part/templates/part/detail.html:389 +#: part/templates/part/detail.html:420 msgid "Options" msgstr "" @@ -5556,7 +5623,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:404 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:407 msgid "Duplicate Part" msgstr "" @@ -5593,118 +5660,128 @@ msgstr "" msgid "Refresh" msgstr "" -#: part/templates/part/detail.html:59 +#: part/templates/part/detail.html:65 +msgid "Add stocktake information" +msgstr "" + +#: part/templates/part/detail.html:66 part/templates/part/part_sidebar.html:49 +#: stock/admin.py:107 templates/js/translated/stock.js:1905 +msgid "Stocktake" +msgstr "" + +#: part/templates/part/detail.html:82 msgid "Part Test Templates" msgstr "" -#: part/templates/part/detail.html:64 +#: part/templates/part/detail.html:87 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:144 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:141 +#: part/templates/part/detail.html:164 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:156 +#: part/templates/part/detail.html:179 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:160 +#: part/templates/part/detail.html:183 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:161 +#: part/templates/part/detail.html:184 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:188 +#: part/templates/part/detail.html:211 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:225 part/templates/part/part_sidebar.html:52 +#: part/templates/part/detail.html:248 part/templates/part/part_sidebar.html:57 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:229 part/templates/part/detail.html:230 +#: part/templates/part/detail.html:252 part/templates/part/detail.html:253 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:250 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:273 part/templates/part/part_sidebar.html:17 +#: report/templates/report/inventree_bill_of_materials_report.html:100 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:255 +#: part/templates/part/detail.html:278 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:259 templates/js/translated/bom.js:309 +#: part/templates/part/detail.html:282 templates/js/translated/bom.js:309 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:261 +#: part/templates/part/detail.html:284 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:271 +#: part/templates/part/detail.html:294 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:272 templates/js/translated/part.js:276 +#: part/templates/part/detail.html:295 templates/js/translated/part.js:279 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:273 +#: part/templates/part/detail.html:296 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:278 part/templates/part/detail.html:279 +#: part/templates/part/detail.html:301 part/templates/part/detail.html:302 #: templates/js/translated/bom.js:1268 templates/js/translated/bom.js:1269 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:292 +#: part/templates/part/detail.html:315 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:310 +#: part/templates/part/detail.html:333 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:337 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:360 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:353 +#: part/templates/part/detail.html:376 msgid "Part Suppliers" msgstr "" -#: part/templates/part/detail.html:383 +#: part/templates/part/detail.html:406 msgid "Part Manufacturers" msgstr "" -#: part/templates/part/detail.html:399 +#: part/templates/part/detail.html:422 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:696 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:704 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:796 msgid "Add Test Result Template" msgstr "" #: part/templates/part/import_wizard/ajax_part_upload.html:29 #: part/templates/part/import_wizard/part_upload.html:14 -msgid "Unsuffitient privileges." +msgid "Insufficient privileges." msgstr "" #: part/templates/part/import_wizard/part_upload.html:8 @@ -5715,6 +5792,34 @@ msgstr "" msgid "Import Parts from File" msgstr "" +#: part/templates/part/import_wizard/part_upload.html:31 +msgid "Requirements for part import" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "The part import file must contain the required named columns as provided in the " +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:89 +msgid "Download Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:92 +#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 +#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 +msgid "Format" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:93 +#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 +#: templates/js/translated/order.js:999 +msgid "Select file format" +msgstr "" + #: part/templates/part/part_app_base.html:12 msgid "Part List" msgstr "" @@ -5804,12 +5909,12 @@ msgstr "" #: templates/js/translated/company.js:660 #: templates/js/translated/company.js:921 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:677 templates/js/translated/part.js:755 +#: templates/js/translated/part.js:680 templates/js/translated/part.js:1026 msgid "Inactive" msgstr "" #: part/templates/part/part_base.html:165 -#: part/templates/part/part_base.html:666 +#: part/templates/part/part_base.html:680 msgid "Show Part Details" msgstr "" @@ -5837,38 +5942,38 @@ msgid "Minimum stock level" msgstr "" #: part/templates/part/part_base.html:330 templates/js/translated/bom.js:1032 -#: templates/js/translated/part.js:798 templates/js/translated/part.js:1604 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:1875 #: templates/js/translated/pricing.js:124 #: templates/js/translated/pricing.js:762 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:345 +#: part/templates/part/part_base.html:359 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:349 +#: part/templates/part/part_base.html:363 #: stock/templates/stock/item_base.html:331 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:449 +#: part/templates/part/part_base.html:463 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:495 +#: part/templates/part/part_base.html:509 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:512 +#: part/templates/part/part_base.html:526 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:564 +#: part/templates/part/part_base.html:578 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:660 +#: part/templates/part/part_base.html:674 msgid "Hide Part Details" msgstr "" @@ -5920,15 +6025,6 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" -#: part/templates/part/part_scheduling.html:13 -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:63 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:2043 templates/js/translated/pricing.js:537 -#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2516 -msgid "Date" -msgstr "" - #: part/templates/part/part_scheduling.html:14 msgid "Scheduled Quantity" msgstr "" @@ -5941,7 +6037,7 @@ msgstr "" msgid "Scheduling" msgstr "" -#: part/templates/part/part_sidebar.html:48 +#: part/templates/part/part_sidebar.html:53 msgid "Test Templates" msgstr "" @@ -5960,7 +6056,7 @@ msgstr "" #: part/templates/part/prices.html:25 stock/admin.py:106 #: stock/templates/stock/item_base.html:440 #: templates/js/translated/company.js:1039 -#: templates/js/translated/stock.js:1940 +#: templates/js/translated/stock.js:1935 msgid "Last Updated" msgstr "" @@ -6023,8 +6119,8 @@ msgstr "" msgid "Add Sell Price Break" msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:639 -#: templates/js/translated/part.js:1373 templates/js/translated/part.js:1375 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:1644 templates/js/translated/part.js:1646 msgid "No Stock" msgstr "" @@ -6087,27 +6183,32 @@ msgstr "" msgid "{title} v{version}" msgstr "" -#: part/views.py:109 +#: part/views.py:111 msgid "Match References" msgstr "" -#: part/views.py:354 +#: part/views.py:239 +#, python-brace-format +msgid "Can't import part {name} because there is no category assigned" +msgstr "" + +#: part/views.py:378 msgid "Part QR Code" msgstr "" -#: part/views.py:372 +#: part/views.py:396 msgid "Select Part Image" msgstr "" -#: part/views.py:398 +#: part/views.py:422 msgid "Updated part image" msgstr "" -#: part/views.py:401 +#: part/views.py:425 msgid "Part image not found" msgstr "" -#: part/views.py:493 +#: part/views.py:517 msgid "Part Pricing" msgstr "" @@ -6156,28 +6257,48 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:29 -#: plugin/builtin/integration/core_notifications.py:31 +#: plugin/builtin/integration/core_notifications.py:33 msgid "InvenTree contributors" msgstr "" -#: plugin/builtin/integration/core_notifications.py:30 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:32 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notificaton methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:37 -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:80 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:38 -#: plugin/builtin/integration/core_notifications.py:57 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:81 msgid "Allow sending of emails for event notifications" msgstr "" +#: plugin/builtin/integration/core_notifications.py:45 +msgid "Enable slack notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:46 +msgid "Allow sending of slack channel messages for event notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:51 +msgid "Slack incoming webhook url" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:52 +msgid "URL that is used to send messages to a slack channel" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:162 +msgid "Open link" +msgstr "" + #: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" @@ -6409,6 +6530,10 @@ msgstr "" msgid "Asset file description" msgstr "" +#: report/templates/report/inventree_bill_of_materials_report.html:133 +msgid "Materials needed" +msgstr "" + #: report/templates/report/inventree_build_order_base.html:146 msgid "Required For" msgstr "" @@ -6427,7 +6552,7 @@ msgstr "" #: templates/js/translated/build.js:1244 templates/js/translated/build.js:1745 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:121 templates/js/translated/order.js:3611 -#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:522 +#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:521 msgid "Serial Number" msgstr "" @@ -6459,8 +6584,9 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: stock/admin.py:87 templates/js/translated/stock.js:642 -#: templates/js/translated/stock.js:812 templates/js/translated/stock.js:2765 +#: stock/admin.py:87 templates/js/translated/part.js:749 +#: templates/js/translated/stock.js:641 templates/js/translated/stock.js:811 +#: templates/js/translated/stock.js:2760 msgid "Serial" msgstr "" @@ -6515,13 +6641,9 @@ msgstr "" msgid "Purchase Order ID" msgstr "" -#: stock/admin.py:107 templates/js/translated/stock.js:1910 -msgid "Stocktake" -msgstr "" - #: stock/admin.py:108 stock/models.py:764 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/stock.js:1924 +#: templates/js/translated/stock.js:1919 msgid "Expiry Date" msgstr "" @@ -6936,7 +7058,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2912 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2907 msgid "Install Stock Item" msgstr "" @@ -6944,7 +7066,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1561 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1560 msgid "Add Test Result" msgstr "" @@ -7117,10 +7239,6 @@ msgstr "" msgid "Stale" msgstr "" -#: stock/templates/stock/item_base.html:445 -msgid "Last Stocktake" -msgstr "" - #: stock/templates/stock/item_base.html:449 msgid "No stocktake performed" msgstr "" @@ -7394,7 +7512,8 @@ msgstr "" #: templates/InvenTree/notifications/notifications.html:10 #: templates/InvenTree/notifications/sidebar.html:5 -#: templates/InvenTree/settings/sidebar.html:17 templates/notifications.html:5 +#: templates/InvenTree/settings/sidebar.html:17 +#: templates/InvenTree/settings/sidebar.html:35 templates/notifications.html:5 msgid "Notifications" msgstr "" @@ -7475,6 +7594,14 @@ msgstr "" msgid "Open in new tab" msgstr "" +#: templates/InvenTree/settings/notifications.html:9 +msgid "Global Notification Settings" +msgstr "" + +#: templates/InvenTree/settings/notifications.html:18 +msgid "Slug" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -7492,7 +7619,7 @@ msgid "Part Parameter Templates" msgstr "" #: templates/InvenTree/settings/plugin.html:10 -#: templates/InvenTree/settings/sidebar.html:55 +#: templates/InvenTree/settings/sidebar.html:57 msgid "Plugin Settings" msgstr "" @@ -7501,7 +7628,7 @@ msgid "Changing the settings below require you to immediately restart the server msgstr "" #: templates/InvenTree/settings/plugin.html:38 -#: templates/InvenTree/settings/sidebar.html:57 +#: templates/InvenTree/settings/sidebar.html:59 msgid "Plugins" msgstr "" @@ -7669,67 +7796,67 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:117 +#: templates/InvenTree/settings/settings.html:118 msgid "Edit Plugin Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:119 +#: templates/InvenTree/settings/settings.html:120 msgid "Edit Notification Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:122 +#: templates/InvenTree/settings/settings.html:123 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:124 +#: templates/InvenTree/settings/settings.html:125 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:214 +#: templates/InvenTree/settings/settings.html:215 msgid "No category parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:236 -#: templates/InvenTree/settings/settings.html:361 -msgid "Edit Template" -msgstr "" - #: templates/InvenTree/settings/settings.html:237 #: templates/InvenTree/settings/settings.html:362 +msgid "Edit Template" +msgstr "" + +#: templates/InvenTree/settings/settings.html:238 +#: templates/InvenTree/settings/settings.html:363 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:277 +#: templates/InvenTree/settings/settings.html:278 msgid "Create Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:322 +#: templates/InvenTree/settings/settings.html:323 msgid "Delete Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:334 +#: templates/InvenTree/settings/settings.html:335 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:338 +#: templates/InvenTree/settings/settings.html:339 #: templates/js/translated/news.js:29 #: templates/js/translated/notification.js:36 msgid "ID" msgstr "" -#: templates/InvenTree/settings/settings.html:380 +#: templates/InvenTree/settings/settings.html:381 msgid "Create Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:399 +#: templates/InvenTree/settings/settings.html:400 msgid "Edit Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:413 +#: templates/InvenTree/settings/settings.html:414 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/InvenTree/settings/settings.html:421 +#: templates/InvenTree/settings/settings.html:422 msgid "Delete Part Parameter Template" msgstr "" @@ -7758,12 +7885,12 @@ msgid "Search Settings" msgstr "" #: templates/InvenTree/settings/sidebar.html:19 -#: templates/InvenTree/settings/sidebar.html:37 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Label Printing" msgstr "" #: templates/InvenTree/settings/sidebar.html:21 -#: templates/InvenTree/settings/sidebar.html:39 +#: templates/InvenTree/settings/sidebar.html:41 msgid "Reporting" msgstr "" @@ -7775,7 +7902,7 @@ msgstr "" msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:43 +#: templates/InvenTree/settings/sidebar.html:45 msgid "Categories" msgstr "" @@ -7945,64 +8072,64 @@ msgstr "" msgid "Do you really want to remove the selected email address?" msgstr "" -#: templates/InvenTree/settings/user_display.html:28 +#: templates/InvenTree/settings/user_display.html:29 msgid "Theme Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:38 +#: templates/InvenTree/settings/user_display.html:39 msgid "Select theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:49 +#: templates/InvenTree/settings/user_display.html:50 msgid "Set Theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:57 +#: templates/InvenTree/settings/user_display.html:58 msgid "Language Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:66 +#: templates/InvenTree/settings/user_display.html:67 msgid "Select language" msgstr "" -#: templates/InvenTree/settings/user_display.html:82 +#: templates/InvenTree/settings/user_display.html:83 #, python-format msgid "%(lang_translated)s%% translated" msgstr "" -#: templates/InvenTree/settings/user_display.html:84 +#: templates/InvenTree/settings/user_display.html:85 msgid "No translations available" msgstr "" -#: templates/InvenTree/settings/user_display.html:91 +#: templates/InvenTree/settings/user_display.html:92 msgid "Set Language" msgstr "" -#: templates/InvenTree/settings/user_display.html:94 +#: templates/InvenTree/settings/user_display.html:95 msgid "Some languages are not complete" msgstr "" -#: templates/InvenTree/settings/user_display.html:96 +#: templates/InvenTree/settings/user_display.html:97 msgid "Show only sufficent" msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "and hidden." msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "Show them too" msgstr "" -#: templates/InvenTree/settings/user_display.html:105 +#: templates/InvenTree/settings/user_display.html:106 msgid "Help the translation efforts!" msgstr "" -#: templates/InvenTree/settings/user_display.html:106 +#: templates/InvenTree/settings/user_display.html:107 msgid "Native language translation of the web application is community contributed via crowdin. Contributions are welcomed and encouraged." msgstr "" -#: templates/InvenTree/settings/user_display.html:107 +#: templates/InvenTree/settings/user_display.html:108 msgid "InvenTree Translation Project" msgstr "" @@ -8080,7 +8207,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:646 +#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:649 msgid "Confirm" msgstr "" @@ -8313,7 +8440,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 -#: templates/js/translated/part.js:2445 +#: templates/js/translated/part.js:2726 msgid "Minimum Quantity" msgstr "" @@ -8466,7 +8593,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1089 +#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1088 msgid "Remove stock item" msgstr "" @@ -8548,16 +8675,6 @@ msgstr "" msgid "Download BOM Template" msgstr "" -#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 -#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 -msgid "Format" -msgstr "" - -#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 -#: templates/js/translated/order.js:999 -msgid "Select file format" -msgstr "" - #: templates/js/translated/bom.js:320 msgid "Multi Level BOM" msgstr "" @@ -8688,7 +8805,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:1145 templates/js/translated/build.js:1923 -#: templates/js/translated/part.js:790 templates/js/translated/part.js:1572 +#: templates/js/translated/part.js:1061 templates/js/translated/part.js:1843 msgid "Includes variant stock" msgstr "" @@ -8773,13 +8890,13 @@ msgstr "" msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:317 templates/js/translated/stock.js:95 -#: templates/js/translated/stock.js:237 +#: templates/js/translated/build.js:317 templates/js/translated/stock.js:94 +#: templates/js/translated/stock.js:236 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:319 templates/js/translated/stock.js:97 -#: templates/js/translated/stock.js:239 +#: templates/js/translated/build.js:319 templates/js/translated/stock.js:96 +#: templates/js/translated/stock.js:238 msgid "Latest serial number" msgstr "" @@ -8987,9 +9104,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1466 -#: templates/js/translated/part.js:2003 templates/js/translated/stock.js:1725 -#: templates/js/translated/stock.js:2428 +#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1737 +#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1724 +#: templates/js/translated/stock.js:2423 msgid "Select" msgstr "" @@ -9001,7 +9118,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2695 +#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2690 msgid "No user information" msgstr "" @@ -9074,34 +9191,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:652 -#: templates/js/translated/company.js:913 templates/js/translated/part.js:661 -#: templates/js/translated/part.js:747 +#: templates/js/translated/company.js:913 templates/js/translated/part.js:664 +#: templates/js/translated/part.js:1018 msgid "Template part" msgstr "" #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:917 templates/js/translated/part.js:665 -#: templates/js/translated/part.js:751 +#: templates/js/translated/company.js:917 templates/js/translated/part.js:668 +#: templates/js/translated/part.js:1022 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:784 templates/js/translated/part.js:870 +#: templates/js/translated/company.js:784 templates/js/translated/part.js:1141 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:821 templates/js/translated/part.js:912 +#: templates/js/translated/company.js:821 templates/js/translated/part.js:1183 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:822 templates/js/translated/part.js:913 +#: templates/js/translated/company.js:822 templates/js/translated/part.js:1184 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:841 templates/js/translated/part.js:930 +#: templates/js/translated/company.js:841 templates/js/translated/part.js:1201 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:852 templates/js/translated/part.js:942 +#: templates/js/translated/company.js:852 templates/js/translated/part.js:1213 msgid "Delete Parameter" msgstr "" @@ -9181,61 +9298,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:369 templates/js/translated/forms.js:384 -#: templates/js/translated/forms.js:398 templates/js/translated/forms.js:412 +#: templates/js/translated/forms.js:372 templates/js/translated/forms.js:387 +#: templates/js/translated/forms.js:401 templates/js/translated/forms.js:415 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:371 +#: templates/js/translated/forms.js:374 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:386 +#: templates/js/translated/forms.js:389 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:400 +#: templates/js/translated/forms.js:403 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:414 +#: templates/js/translated/forms.js:417 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:672 +#: templates/js/translated/forms.js:675 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:773 +#: templates/js/translated/forms.js:776 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1266 templates/modals.html:19 +#: templates/js/translated/forms.js:1269 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1703 +#: templates/js/translated/forms.js:1706 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1919 templates/search.html:29 +#: templates/js/translated/forms.js:1922 templates/search.html:29 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2172 +#: templates/js/translated/forms.js:2175 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:2640 +#: templates/js/translated/forms.js:2643 msgid "Select Columns" msgstr "" @@ -9256,7 +9373,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1113 +#: templates/js/translated/stock.js:1112 msgid "Select Stock Items" msgstr "" @@ -9590,7 +9707,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2184 +#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2179 msgid "Stock Status" msgstr "" @@ -9614,7 +9731,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1982 templates/js/translated/part.js:983 +#: templates/js/translated/order.js:1982 templates/js/translated/part.js:1254 msgid "No purchase orders found" msgstr "" @@ -9647,8 +9764,8 @@ msgstr "" msgid "Total" msgstr "" -#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1085 -#: templates/js/translated/part.js:1137 +#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1356 +#: templates/js/translated/part.js:1408 msgid "Total Quantity" msgstr "" @@ -9666,11 +9783,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2388 templates/js/translated/order.js:3900 -#: templates/js/translated/part.js:1121 +#: templates/js/translated/part.js:1392 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1166 +#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1437 msgid "Receive line item" msgstr "" @@ -9791,7 +9908,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3623 templates/js/translated/order.js:3712 -#: templates/js/translated/stock.js:1641 +#: templates/js/translated/stock.js:1640 msgid "Shipped to customer" msgstr "" @@ -9835,334 +9952,358 @@ msgstr "" msgid "No matching lines" msgstr "" -#: templates/js/translated/part.js:52 +#: templates/js/translated/part.js:55 msgid "Part Attributes" msgstr "" -#: templates/js/translated/part.js:56 +#: templates/js/translated/part.js:59 msgid "Part Creation Options" msgstr "" -#: templates/js/translated/part.js:60 +#: templates/js/translated/part.js:63 msgid "Part Duplication Options" msgstr "" -#: templates/js/translated/part.js:64 +#: templates/js/translated/part.js:67 msgid "Supplier Options" msgstr "" -#: templates/js/translated/part.js:78 +#: templates/js/translated/part.js:81 msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:168 +#: templates/js/translated/part.js:171 msgid "Create Initial Stock" msgstr "" -#: templates/js/translated/part.js:169 +#: templates/js/translated/part.js:172 msgid "Create an initial stock item for this part" msgstr "" -#: templates/js/translated/part.js:176 +#: templates/js/translated/part.js:179 msgid "Initial Stock Quantity" msgstr "" -#: templates/js/translated/part.js:177 +#: templates/js/translated/part.js:180 msgid "Specify initial stock quantity for this part" msgstr "" -#: templates/js/translated/part.js:184 +#: templates/js/translated/part.js:187 msgid "Select destination stock location" msgstr "" -#: templates/js/translated/part.js:202 +#: templates/js/translated/part.js:205 msgid "Copy Category Parameters" msgstr "" -#: templates/js/translated/part.js:203 +#: templates/js/translated/part.js:206 msgid "Copy parameter templates from selected part category" msgstr "" -#: templates/js/translated/part.js:211 +#: templates/js/translated/part.js:214 msgid "Add Supplier Data" msgstr "" -#: templates/js/translated/part.js:212 +#: templates/js/translated/part.js:215 msgid "Create initial supplier data for this part" msgstr "" -#: templates/js/translated/part.js:268 +#: templates/js/translated/part.js:271 msgid "Copy Image" msgstr "" -#: templates/js/translated/part.js:269 +#: templates/js/translated/part.js:272 msgid "Copy image from original part" msgstr "" -#: templates/js/translated/part.js:277 +#: templates/js/translated/part.js:280 msgid "Copy bill of materials from original part" msgstr "" -#: templates/js/translated/part.js:284 +#: templates/js/translated/part.js:287 msgid "Copy Parameters" msgstr "" -#: templates/js/translated/part.js:285 +#: templates/js/translated/part.js:288 msgid "Copy parameter data from original part" msgstr "" -#: templates/js/translated/part.js:298 +#: templates/js/translated/part.js:301 msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:313 templates/js/translated/stock.js:122 +#: templates/js/translated/part.js:316 templates/js/translated/stock.js:121 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:329 +#: templates/js/translated/part.js:332 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:342 +#: templates/js/translated/part.js:345 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:347 +#: templates/js/translated/part.js:350 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:359 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:360 +#: templates/js/translated/part.js:363 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:368 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:394 +#: templates/js/translated/part.js:397 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:396 +#: templates/js/translated/part.js:399 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:407 +#: templates/js/translated/part.js:410 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:459 +#: templates/js/translated/part.js:462 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:460 +#: templates/js/translated/part.js:463 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:477 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:476 +#: templates/js/translated/part.js:479 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:477 +#: templates/js/translated/part.js:480 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:478 +#: templates/js/translated/part.js:481 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:485 +#: templates/js/translated/part.js:488 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:521 +#: templates/js/translated/part.js:524 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:523 +#: templates/js/translated/part.js:526 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:531 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:530 +#: templates/js/translated/part.js:533 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:547 +#: templates/js/translated/part.js:550 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:560 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:560 +#: templates/js/translated/part.js:563 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:585 +#: templates/js/translated/part.js:588 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1554 +#: templates/js/translated/part.js:612 templates/js/translated/part.js:1825 #: templates/js/translated/table_filters.js:488 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:622 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:653 templates/js/translated/part.js:739 +#: templates/js/translated/part.js:656 templates/js/translated/part.js:1010 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:657 templates/js/translated/part.js:743 +#: templates/js/translated/part.js:660 templates/js/translated/part.js:1014 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:669 +#: templates/js/translated/part.js:672 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:673 +#: templates/js/translated/part.js:676 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:815 +#: templates/js/translated/part.js:761 +msgid "Stock item has not been checked recently" +msgstr "" + +#: templates/js/translated/part.js:769 +msgid "Update item" +msgstr "" + +#: templates/js/translated/part.js:770 +msgid "Delete item" +msgstr "" + +#: templates/js/translated/part.js:871 +msgid "No stocktake information available" +msgstr "" + +#: templates/js/translated/part.js:910 templates/js/translated/part.js:933 +msgid "Edit Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:914 templates/js/translated/part.js:945 +msgid "Delete Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:1086 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1236 +#: templates/js/translated/part.js:1507 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1260 +#: templates/js/translated/part.js:1531 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1327 templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1598 templates/js/translated/part.js:1936 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1521 +#: templates/js/translated/part.js:1792 msgid "No category" msgstr "" -#: templates/js/translated/part.js:1552 +#: templates/js/translated/part.js:1823 msgid "No stock" msgstr "" -#: templates/js/translated/part.js:1576 +#: templates/js/translated/part.js:1847 msgid "Allocated to build orders" msgstr "" -#: templates/js/translated/part.js:1580 +#: templates/js/translated/part.js:1851 msgid "Allocated to sales orders" msgstr "" -#: templates/js/translated/part.js:1679 templates/js/translated/part.js:1922 -#: templates/js/translated/stock.js:2387 +#: templates/js/translated/part.js:1960 templates/js/translated/part.js:2203 +#: templates/js/translated/stock.js:2382 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1695 +#: templates/js/translated/part.js:1976 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1761 +#: templates/js/translated/part.js:2042 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1766 +#: templates/js/translated/part.js:2047 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1771 +#: templates/js/translated/part.js:2052 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1784 +#: templates/js/translated/part.js:2065 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1942 templates/js/translated/stock.js:2407 +#: templates/js/translated/part.js:2223 templates/js/translated/stock.js:2402 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2022 +#: templates/js/translated/part.js:2303 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2038 +#: templates/js/translated/part.js:2319 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2383 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2153 templates/js/translated/stock.js:1338 +#: templates/js/translated/part.js:2434 templates/js/translated/stock.js:1337 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2154 templates/js/translated/stock.js:1339 -#: templates/js/translated/stock.js:1599 +#: templates/js/translated/part.js:2435 templates/js/translated/stock.js:1338 +#: templates/js/translated/stock.js:1598 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2441 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2182 +#: templates/js/translated/part.js:2463 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2196 +#: templates/js/translated/part.js:2477 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2277 templates/js/translated/part.js:2278 +#: templates/js/translated/part.js:2558 templates/js/translated/part.js:2559 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2280 +#: templates/js/translated/part.js:2561 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:2286 +#: templates/js/translated/part.js:2567 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:2336 +#: templates/js/translated/part.js:2617 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2623 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:2438 +#: templates/js/translated/part.js:2719 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2454 +#: templates/js/translated/part.js:2735 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:2499 +#: templates/js/translated/part.js:2780 msgid "Minimum Stock Level" msgstr "" @@ -10290,388 +10431,388 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:74 +#: templates/js/translated/stock.js:73 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:104 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:114 +#: templates/js/translated/stock.js:113 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:148 +#: templates/js/translated/stock.js:147 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:163 +#: templates/js/translated/stock.js:162 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:177 +#: templates/js/translated/stock.js:176 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:184 +#: templates/js/translated/stock.js:183 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:193 +#: templates/js/translated/stock.js:192 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:197 +#: templates/js/translated/stock.js:196 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:201 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:256 +#: templates/js/translated/stock.js:255 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:298 +#: templates/js/translated/stock.js:297 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:304 +#: templates/js/translated/stock.js:303 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:368 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:389 +#: templates/js/translated/stock.js:388 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:405 +#: templates/js/translated/stock.js:404 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:410 +#: templates/js/translated/stock.js:409 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:431 +#: templates/js/translated/stock.js:430 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:481 +#: templates/js/translated/stock.js:480 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:494 +#: templates/js/translated/stock.js:493 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:519 +#: templates/js/translated/stock.js:518 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:523 templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:522 templates/js/translated/stock.js:523 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:540 +#: templates/js/translated/stock.js:539 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:560 +#: templates/js/translated/stock.js:559 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:568 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:692 +#: templates/js/translated/stock.js:691 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:693 +#: templates/js/translated/stock.js:692 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:770 +#: templates/js/translated/stock.js:769 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:771 +#: templates/js/translated/stock.js:770 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:773 +#: templates/js/translated/stock.js:772 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:774 +#: templates/js/translated/stock.js:773 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:863 +#: templates/js/translated/stock.js:862 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:864 +#: templates/js/translated/stock.js:863 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:958 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:959 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:966 +#: templates/js/translated/stock.js:965 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:967 +#: templates/js/translated/stock.js:966 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:971 +#: templates/js/translated/stock.js:970 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:972 +#: templates/js/translated/stock.js:971 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:976 +#: templates/js/translated/stock.js:975 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:977 users/models.py:220 +#: templates/js/translated/stock.js:976 users/models.py:221 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:981 +#: templates/js/translated/stock.js:980 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1114 +#: templates/js/translated/stock.js:1113 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1141 +#: templates/js/translated/stock.js:1140 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1277 +#: templates/js/translated/stock.js:1276 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1279 +#: templates/js/translated/stock.js:1278 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1284 +#: templates/js/translated/stock.js:1283 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1331 +#: templates/js/translated/stock.js:1330 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1334 +#: templates/js/translated/stock.js:1333 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1360 +#: templates/js/translated/stock.js:1359 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1417 +#: templates/js/translated/stock.js:1416 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1582 +#: templates/js/translated/stock.js:1581 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1604 +#: templates/js/translated/stock.js:1603 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1633 +#: templates/js/translated/stock.js:1632 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1637 +#: templates/js/translated/stock.js:1636 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1645 +#: templates/js/translated/stock.js:1644 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1651 +#: templates/js/translated/stock.js:1650 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1820 +#: templates/js/translated/stock.js:1815 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1825 +#: templates/js/translated/stock.js:1820 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1828 +#: templates/js/translated/stock.js:1823 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1831 +#: templates/js/translated/stock.js:1826 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1833 +#: templates/js/translated/stock.js:1828 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1835 +#: templates/js/translated/stock.js:1830 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1838 +#: templates/js/translated/stock.js:1833 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1837 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1844 +#: templates/js/translated/stock.js:1839 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1846 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1853 +#: templates/js/translated/stock.js:1848 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1855 +#: templates/js/translated/stock.js:1850 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1859 +#: templates/js/translated/stock.js:1854 #: templates/js/translated/table_filters.js:216 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1989 +#: templates/js/translated/stock.js:1984 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2026 +#: templates/js/translated/stock.js:2021 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2199 +#: templates/js/translated/stock.js:2194 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2213 +#: templates/js/translated/stock.js:2208 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2214 +#: templates/js/translated/stock.js:2209 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2446 +#: templates/js/translated/stock.js:2441 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2536 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2557 +#: templates/js/translated/stock.js:2552 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2579 +#: templates/js/translated/stock.js:2574 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2598 +#: templates/js/translated/stock.js:2593 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2617 +#: templates/js/translated/stock.js:2612 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2635 +#: templates/js/translated/stock.js:2630 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2658 +#: templates/js/translated/stock.js:2653 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2666 +#: templates/js/translated/stock.js:2661 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2737 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2793 templates/js/translated/stock.js:2829 +#: templates/js/translated/stock.js:2788 templates/js/translated/stock.js:2824 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2845 +#: templates/js/translated/stock.js:2840 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2866 +#: templates/js/translated/stock.js:2861 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2867 +#: templates/js/translated/stock.js:2862 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2869 +#: templates/js/translated/stock.js:2864 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2870 +#: templates/js/translated/stock.js:2865 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:2866 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2872 +#: templates/js/translated/stock.js:2867 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2885 +#: templates/js/translated/stock.js:2880 msgid "Select part to install" msgstr "" @@ -10696,7 +10837,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:92 -#: templates/js/translated/table_filters.js:516 +#: templates/js/translated/table_filters.js:520 msgid "Has Pricing" msgstr "" @@ -10912,6 +11053,10 @@ msgstr "" msgid "Purchasable" msgstr "" +#: templates/js/translated/table_filters.js:504 +msgid "Has stocktake entries" +msgstr "" + #: templates/js/translated/tables.js:70 msgid "Display calendar view" msgstr "" @@ -11206,35 +11351,35 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:207 +#: users/models.py:208 msgid "Permission set" msgstr "" -#: users/models.py:215 +#: users/models.py:216 msgid "Group" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "View" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "Permission to view items" msgstr "" -#: users/models.py:220 +#: users/models.py:221 msgid "Permission to add items" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Change" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Permissions to edit items" msgstr "" -#: users/models.py:224 +#: users/models.py:225 msgid "Permission to delete items" msgstr "" diff --git a/InvenTree/locale/de/LC_MESSAGES/django.po b/InvenTree/locale/de/LC_MESSAGES/django.po index 352d440c40..d61adab9da 100644 --- a/InvenTree/locale/de/LC_MESSAGES/django.po +++ b/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: 2022-12-30 20:46+0000\n" -"PO-Revision-Date: 2022-12-31 11:29\n" +"POT-Creation-Date: 2023-01-01 11:05+0000\n" +"PO-Revision-Date: 2023-01-01 11:26\n" "Last-Translator: \n" "Language-Team: German\n" "Language: de_DE\n" @@ -34,7 +34,7 @@ msgstr "Datum eingeben" #: company/templates/company/sidebar.html:25 order/models.py:943 #: order/templates/order/po_sidebar.html:11 #: order/templates/order/so_sidebar.html:17 part/admin.py:27 -#: part/templates/part/part_sidebar.html:57 +#: part/models.py:2932 part/templates/part/part_sidebar.html:62 #: report/templates/report/inventree_build_order_base.html:172 #: stock/admin.py:103 stock/models.py:2061 stock/models.py:2169 #: stock/serializers.py:321 stock/serializers.py:454 stock/serializers.py:535 @@ -44,8 +44,8 @@ msgstr "Datum eingeben" #: templates/js/translated/company.js:1023 #: templates/js/translated/order.js:2435 templates/js/translated/order.js:2569 #: templates/js/translated/order.js:3067 templates/js/translated/order.js:4004 -#: templates/js/translated/order.js:4385 templates/js/translated/stock.js:1413 -#: templates/js/translated/stock.js:2020 +#: templates/js/translated/order.js:4385 templates/js/translated/part.js:882 +#: templates/js/translated/stock.js:1412 templates/js/translated/stock.js:2015 msgid "Notes" msgstr "Notizen" @@ -204,18 +204,18 @@ msgstr "Anhang" msgid "Select file to attach" msgstr "Datei zum Anhängen auswählen" -#: InvenTree/models.py:412 common/models.py:2366 company/models.py:129 +#: InvenTree/models.py:412 common/models.py:2373 company/models.py:129 #: company/models.py:281 company/models.py:516 order/models.py:85 -#: order/models.py:1282 part/admin.py:25 part/models.py:865 +#: order/models.py:1282 part/admin.py:25 part/models.py:866 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: stock/admin.py:102 templates/js/translated/company.js:692 #: templates/js/translated/company.js:1012 -#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1615 +#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1886 msgid "Link" msgstr "Link" -#: InvenTree/models.py:413 build/models.py:290 part/models.py:866 +#: InvenTree/models.py:413 build/models.py:290 part/models.py:867 #: stock/models.py:716 msgid "Link to external URL" msgstr "Link zu einer externen URL" @@ -229,12 +229,13 @@ msgstr "Kommentar" msgid "File comment" msgstr "Datei-Kommentar" -#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1810 -#: common/models.py:1811 common/models.py:2034 common/models.py:2035 -#: common/models.py:2296 common/models.py:2297 part/models.py:2948 -#: part/models.py:2968 plugin/models.py:264 plugin/models.py:265 +#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1817 +#: common/models.py:1818 common/models.py:2041 common/models.py:2042 +#: common/models.py:2303 common/models.py:2304 part/models.py:2940 +#: part/models.py:3026 part/models.py:3046 plugin/models.py:264 +#: plugin/models.py:265 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2689 +#: templates/js/translated/stock.js:2684 msgid "User" msgstr "Benutzer" @@ -271,19 +272,20 @@ msgstr "Fehler beim Umbenennen" msgid "Invalid choice" msgstr "Ungültige Auswahl" -#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2020 -#: company/models.py:363 label/models.py:101 part/models.py:809 -#: part/models.py:3123 plugin/models.py:94 report/models.py:152 +#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2027 +#: company/models.py:363 label/models.py:101 part/models.py:810 +#: part/models.py:3201 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 +#: templates/InvenTree/settings/notifications.html:17 #: templates/InvenTree/settings/plugin.html:60 #: templates/InvenTree/settings/plugin.html:104 #: templates/InvenTree/settings/plugin_settings.html:23 -#: templates/InvenTree/settings/settings.html:344 +#: templates/InvenTree/settings/settings.html:345 #: templates/js/translated/company.js:581 #: templates/js/translated/company.js:794 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:711 templates/js/translated/part.js:880 -#: templates/js/translated/part.js:2010 templates/js/translated/stock.js:2434 +#: templates/js/translated/part.js:982 templates/js/translated/part.js:1151 +#: templates/js/translated/part.js:2291 templates/js/translated/stock.js:2429 msgid "Name" msgstr "Name" @@ -292,24 +294,25 @@ msgstr "Name" #: company/models.py:522 company/templates/company/company_base.html:72 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:108 label/models.py:108 -#: order/models.py:83 part/admin.py:141 part/admin.py:222 part/models.py:832 -#: part/models.py:3132 part/templates/part/category.html:75 +#: order/models.py:83 part/admin.py:174 part/admin.py:255 part/models.py:833 +#: part/models.py:3210 part/templates/part/category.html:75 #: part/templates/part/part_base.html:172 #: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/admin.py:25 stock/templates/stock/location.html:117 +#: templates/InvenTree/settings/notifications.html:19 #: templates/InvenTree/settings/plugin_settings.html:28 -#: templates/InvenTree/settings/settings.html:355 +#: templates/InvenTree/settings/settings.html:356 #: templates/js/translated/bom.js:592 templates/js/translated/bom.js:895 #: templates/js/translated/build.js:2596 templates/js/translated/company.js:445 #: templates/js/translated/company.js:703 #: templates/js/translated/company.js:987 templates/js/translated/order.js:2030 #: templates/js/translated/order.js:2267 templates/js/translated/order.js:2845 -#: templates/js/translated/part.js:773 templates/js/translated/part.js:1223 -#: templates/js/translated/part.js:1497 templates/js/translated/part.js:2046 -#: templates/js/translated/part.js:2121 templates/js/translated/stock.js:1787 -#: templates/js/translated/stock.js:2466 templates/js/translated/stock.js:2526 +#: templates/js/translated/part.js:1044 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1768 templates/js/translated/part.js:2327 +#: templates/js/translated/part.js:2402 templates/js/translated/stock.js:1782 +#: templates/js/translated/stock.js:2461 templates/js/translated/stock.js:2521 msgid "Description" msgstr "Beschreibung" @@ -322,7 +325,7 @@ msgid "parent" msgstr "Eltern" #: InvenTree/models.py:580 InvenTree/models.py:581 -#: templates/js/translated/part.js:2055 templates/js/translated/stock.js:2475 +#: templates/js/translated/part.js:2336 templates/js/translated/stock.js:2470 msgid "Path" msgstr "Pfad" @@ -354,7 +357,7 @@ msgstr "Serverfehler" msgid "An error has been logged by the server." msgstr "Ein Fehler wurde vom Server protokolliert." -#: InvenTree/serializers.py:58 part/models.py:3468 +#: InvenTree/serializers.py:58 part/models.py:3546 msgid "Must be a valid number" msgstr "Muss eine gültige Nummer sein" @@ -421,107 +424,107 @@ 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/settings.py:639 +#: InvenTree/settings.py:642 msgid "Czech" msgstr "Tschechisch" -#: InvenTree/settings.py:640 +#: InvenTree/settings.py:643 msgid "Danish" msgstr "Dänisch" -#: InvenTree/settings.py:641 +#: InvenTree/settings.py:644 msgid "German" msgstr "Deutsch" -#: InvenTree/settings.py:642 +#: InvenTree/settings.py:645 msgid "Greek" msgstr "Griechisch" -#: InvenTree/settings.py:643 +#: InvenTree/settings.py:646 msgid "English" msgstr "Englisch" -#: InvenTree/settings.py:644 +#: InvenTree/settings.py:647 msgid "Spanish" msgstr "Spanisch" -#: InvenTree/settings.py:645 +#: InvenTree/settings.py:648 msgid "Spanish (Mexican)" msgstr "Spanisch (Mexikanisch)" -#: InvenTree/settings.py:646 +#: InvenTree/settings.py:649 msgid "Farsi / Persian" msgstr "Persisch" -#: InvenTree/settings.py:647 +#: InvenTree/settings.py:650 msgid "French" msgstr "Französisch" -#: InvenTree/settings.py:648 +#: InvenTree/settings.py:651 msgid "Hebrew" msgstr "Hebräisch" -#: InvenTree/settings.py:649 +#: InvenTree/settings.py:652 msgid "Hungarian" msgstr "Ungarisch" -#: InvenTree/settings.py:650 +#: InvenTree/settings.py:653 msgid "Italian" msgstr "Italienisch" -#: InvenTree/settings.py:651 +#: InvenTree/settings.py:654 msgid "Japanese" msgstr "Japanisch" -#: InvenTree/settings.py:652 +#: InvenTree/settings.py:655 msgid "Korean" msgstr "Koreanisch" -#: InvenTree/settings.py:653 +#: InvenTree/settings.py:656 msgid "Dutch" msgstr "Niederländisch" -#: InvenTree/settings.py:654 +#: InvenTree/settings.py:657 msgid "Norwegian" msgstr "Norwegisch" -#: InvenTree/settings.py:655 +#: InvenTree/settings.py:658 msgid "Polish" msgstr "Polnisch" -#: InvenTree/settings.py:656 +#: InvenTree/settings.py:659 msgid "Portuguese" msgstr "Portugiesisch" -#: InvenTree/settings.py:657 +#: InvenTree/settings.py:660 msgid "Portuguese (Brazilian)" msgstr "Portugiesisch (Brasilien)" -#: InvenTree/settings.py:658 +#: InvenTree/settings.py:661 msgid "Russian" msgstr "Russisch" -#: InvenTree/settings.py:659 +#: InvenTree/settings.py:662 msgid "Slovenian" msgstr "" -#: InvenTree/settings.py:660 +#: InvenTree/settings.py:663 msgid "Swedish" msgstr "Schwedisch" -#: InvenTree/settings.py:661 +#: InvenTree/settings.py:664 msgid "Thai" msgstr "Thailändisch" -#: InvenTree/settings.py:662 +#: InvenTree/settings.py:665 msgid "Turkish" msgstr "Türkisch" -#: InvenTree/settings.py:663 +#: InvenTree/settings.py:666 msgid "Vietnamese" msgstr "Vietnamesisch" -#: InvenTree/settings.py:664 +#: InvenTree/settings.py:667 msgid "Chinese" msgstr "Chinesisch" @@ -652,7 +655,7 @@ msgstr "Vom übergeordneten Element geteilt" msgid "Split child item" msgstr "Unterobjekt geteilt" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2124 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2119 msgid "Merged stock items" msgstr "Lagerartikel zusammengeführt" @@ -756,7 +759,7 @@ msgstr "Bauauftrag" #: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:141 -#: templates/InvenTree/settings/sidebar.html:47 +#: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:254 users/models.py:41 msgid "Build Orders" msgstr "Bauaufträge" @@ -766,8 +769,9 @@ msgid "Build Order Reference" msgstr "Bauauftragsreferenz" #: build/models.py:155 order/models.py:241 order/models.py:651 -#: order/models.py:941 part/admin.py:224 part/models.py:3378 +#: order/models.py:941 part/admin.py:257 part/models.py:3456 #: part/templates/part/upload_bom.html:54 +#: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 #: templates/js/translated/bom.js:729 templates/js/translated/bom.js:905 @@ -793,13 +797,15 @@ msgstr "Bauauftrag, zu dem dieser Bauauftrag zugwiesen ist" #: build/models.py:180 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:684 #: order/models.py:1038 order/models.py:1149 order/models.py:1150 -#: part/models.py:381 part/models.py:2781 part/models.py:2894 -#: part/models.py:2909 part/models.py:2928 part/models.py:2946 -#: part/models.py:3045 part/models.py:3166 part/models.py:3258 -#: part/models.py:3343 part/models.py:3659 part/serializers.py:853 -#: part/templates/part/part_app_base.html:8 +#: part/models.py:382 part/models.py:2799 part/models.py:2912 +#: part/models.py:2972 part/models.py:2987 part/models.py:3006 +#: part/models.py:3024 part/models.py:3123 part/models.py:3244 +#: part/models.py:3336 part/models.py:3421 part/models.py:3737 +#: part/serializers.py:894 part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 +#: report/templates/report/inventree_bill_of_materials_report.html:110 +#: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_base.html:109 #: report/templates/report/inventree_po_report.html:89 #: report/templates/report/inventree_so_report.html:90 stock/serializers.py:90 @@ -819,12 +825,12 @@ msgstr "Bauauftrag, zu dem dieser Bauauftrag zugwiesen ist" #: templates/js/translated/order.js:1172 templates/js/translated/order.js:1676 #: templates/js/translated/order.js:2252 templates/js/translated/order.js:3199 #: templates/js/translated/order.js:3595 templates/js/translated/order.js:3825 -#: templates/js/translated/part.js:1208 templates/js/translated/part.js:1280 -#: templates/js/translated/part.js:1474 templates/js/translated/pricing.js:102 -#: templates/js/translated/stock.js:618 templates/js/translated/stock.js:783 -#: templates/js/translated/stock.js:993 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2552 templates/js/translated/stock.js:2747 -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/part.js:1479 templates/js/translated/part.js:1551 +#: templates/js/translated/part.js:1745 templates/js/translated/pricing.js:102 +#: templates/js/translated/stock.js:617 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:992 templates/js/translated/stock.js:1738 +#: templates/js/translated/stock.js:2547 templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2879 msgid "Part" msgstr "Teil" @@ -890,7 +896,7 @@ msgstr "Losnummer" msgid "Batch code for this build output" msgstr "Losnummer für dieses Endprodukt" -#: build/models.py:252 order/models.py:87 part/models.py:1001 +#: build/models.py:252 order/models.py:87 part/models.py:1002 #: part/templates/part/part_base.html:318 templates/js/translated/order.js:2858 msgid "Creation Date" msgstr "Erstelldatum" @@ -923,7 +929,7 @@ msgstr "Nutzer der diesen Bauauftrag erstellt hat" #: build/models.py:283 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:101 #: order/templates/order/order_base.html:185 -#: order/templates/order/sales_order_base.html:183 part/models.py:1005 +#: order/templates/order/sales_order_base.html:183 part/models.py:1006 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2658 templates/js/translated/order.js:2064 msgid "Responsible" @@ -936,7 +942,7 @@ msgstr "Nutzer der für diesen Bauauftrag zuständig ist" #: build/models.py:289 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:188 -#: part/templates/part/part_base.html:376 stock/models.py:714 +#: part/templates/part/part_base.html:390 stock/models.py:714 #: stock/templates/stock/item_base.html:203 msgid "External Link" msgstr "Externer Link" @@ -1011,8 +1017,8 @@ msgstr "Bauauftrag starten um Teile zuzuweisen" #: templates/js/translated/order.js:107 templates/js/translated/order.js:3200 #: templates/js/translated/order.js:3502 templates/js/translated/order.js:3507 #: templates/js/translated/order.js:3602 templates/js/translated/order.js:3694 -#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 -#: templates/js/translated/stock.js:2625 +#: templates/js/translated/part.js:803 templates/js/translated/stock.js:618 +#: templates/js/translated/stock.js:783 templates/js/translated/stock.js:2620 msgid "Stock Item" msgstr "Lagerartikel" @@ -1022,12 +1028,13 @@ msgstr "Quell-Lagerartikel" #: build/models.py:1364 build/serializers.py:192 #: build/templates/build/build_base.html:85 -#: build/templates/build/detail.html:34 common/models.py:1842 +#: build/templates/build/detail.html:34 common/models.py:1849 #: order/models.py:934 order/models.py:1460 order/serializers.py:1206 -#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:223 -#: part/forms.py:40 part/models.py:3359 +#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:256 +#: part/forms.py:40 part/models.py:2919 part/models.py:3437 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 +#: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_base.html:113 #: report/templates/report/inventree_po_report.html:90 #: report/templates/report/inventree_so_report.html:91 @@ -1049,13 +1056,14 @@ msgstr "Quell-Lagerartikel" #: templates/js/translated/order.js:3201 templates/js/translated/order.js:3521 #: templates/js/translated/order.js:3608 templates/js/translated/order.js:3700 #: templates/js/translated/order.js:3847 templates/js/translated/order.js:4338 -#: templates/js/translated/part.js:1078 templates/js/translated/part.js:2568 +#: templates/js/translated/part.js:805 templates/js/translated/part.js:876 +#: templates/js/translated/part.js:1349 templates/js/translated/part.js:2849 #: templates/js/translated/pricing.js:114 #: templates/js/translated/pricing.js:207 #: templates/js/translated/pricing.js:255 -#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:490 -#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:814 -#: templates/js/translated/stock.js:2674 templates/js/translated/stock.js:2759 +#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:489 +#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:813 +#: templates/js/translated/stock.js:2669 templates/js/translated/stock.js:2754 msgid "Quantity" msgstr "Anzahl" @@ -1097,8 +1105,8 @@ msgid "Enter quantity for build output" msgstr "Menge der Endprodukte angeben" #: build/serializers.py:207 build/serializers.py:683 order/models.py:327 -#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:645 -#: part/serializers.py:1016 stock/models.py:574 stock/models.py:1312 +#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:686 +#: part/serializers.py:1057 stock/models.py:574 stock/models.py:1312 #: stock/serializers.py:294 msgid "Quantity must be greater than zero" msgstr "Anzahl muss größer Null sein" @@ -1113,7 +1121,7 @@ msgstr "Ganzzahl erforderlich da die Stückliste nachverfolgbare Teile enthält" #: build/serializers.py:231 order/serializers.py:463 order/serializers.py:1210 #: stock/serializers.py:303 templates/js/translated/order.js:1545 -#: templates/js/translated/stock.js:303 templates/js/translated/stock.js:491 +#: templates/js/translated/stock.js:302 templates/js/translated/stock.js:490 msgid "Serial Numbers" msgstr "Seriennummer" @@ -1146,9 +1154,10 @@ msgstr "Eine Liste von Endprodukten muss angegeben werden" #: templates/js/translated/build.js:1759 templates/js/translated/order.js:1572 #: templates/js/translated/order.js:3514 templates/js/translated/order.js:3619 #: templates/js/translated/order.js:3627 templates/js/translated/order.js:3708 -#: templates/js/translated/part.js:183 templates/js/translated/stock.js:620 -#: templates/js/translated/stock.js:785 templates/js/translated/stock.js:995 -#: templates/js/translated/stock.js:1895 templates/js/translated/stock.js:2566 +#: templates/js/translated/part.js:186 templates/js/translated/part.js:804 +#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 +#: templates/js/translated/stock.js:994 templates/js/translated/stock.js:1890 +#: templates/js/translated/stock.js:2561 msgid "Location" msgstr "Lagerort" @@ -1162,8 +1171,8 @@ msgstr "Lagerort für fertige Endprodukte" #: stock/templates/stock/item_base.html:421 #: templates/js/translated/barcode.js:237 templates/js/translated/build.js:2630 #: templates/js/translated/order.js:1681 templates/js/translated/order.js:2034 -#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1870 -#: templates/js/translated/stock.js:2643 templates/js/translated/stock.js:2775 +#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:2638 templates/js/translated/stock.js:2770 msgid "Status" msgstr "Status" @@ -1239,8 +1248,8 @@ msgstr "Benötigte Teil-Anzahl wurde noch nicht fertiggestellt" msgid "Build order has incomplete outputs" msgstr "Bauauftrag hat unvollständige Aufbauten" -#: build/serializers.py:595 build/serializers.py:640 part/models.py:3495 -#: part/models.py:3651 +#: build/serializers.py:595 build/serializers.py:640 part/models.py:3573 +#: part/models.py:3729 msgid "BOM Item" msgstr "Stücklisten-Position" @@ -1406,7 +1415,7 @@ msgstr "Bestand wurde Bauauftrag noch nicht vollständig zugewiesen" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2670 templates/js/translated/order.js:2051 #: templates/js/translated/order.js:2382 templates/js/translated/order.js:2866 -#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1093 +#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1364 msgid "Target Date" msgstr "Zieldatum" @@ -1484,8 +1493,8 @@ msgstr "Zugewiesene Teile" #: stock/templates/stock/item_base.html:168 #: templates/js/translated/build.js:1250 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:1884 -#: templates/js/translated/stock.js:2782 +#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:1879 +#: templates/js/translated/stock.js:2777 #: templates/js/translated/table_filters.js:179 #: templates/js/translated/table_filters.js:270 msgid "Batch" @@ -1617,8 +1626,8 @@ msgstr "Fertiggestellte Endprodukte" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:86 #: order/templates/order/sales_order_detail.html:140 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:210 -#: part/templates/part/part_sidebar.html:55 stock/templates/stock/item.html:117 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:233 +#: part/templates/part/part_sidebar.html:60 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" msgstr "Anhänge" @@ -1635,7 +1644,7 @@ msgstr "Zuordnung abgeschlossen" msgid "All untracked stock items have been allocated" msgstr "Alle nicht verfolgten Lagerartikel wurden zugewiesen" -#: build/templates/build/index.html:18 part/templates/part/detail.html:316 +#: build/templates/build/index.html:18 part/templates/part/detail.html:339 msgid "New Build Order" msgstr "Neuer Bauauftrag" @@ -1928,9 +1937,9 @@ msgstr "Kategorie-Parametervorlage kopieren" msgid "Copy category parameter templates when creating a part" msgstr "Kategorie-Parameter Vorlagen kopieren wenn ein Teil angelegt wird" -#: common/models.py:1014 part/admin.py:41 part/models.py:3168 +#: common/models.py:1014 part/admin.py:41 part/models.py:3246 #: report/models.py:158 templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:504 +#: templates/js/translated/table_filters.js:508 msgid "Template" msgstr "Vorlage" @@ -1938,7 +1947,7 @@ msgstr "Vorlage" msgid "Parts are templates by default" msgstr "Teile sind standardmäßig Vorlagen" -#: common/models.py:1021 part/admin.py:37 part/admin.py:229 part/models.py:957 +#: common/models.py:1021 part/admin.py:37 part/admin.py:262 part/models.py:958 #: templates/js/translated/bom.js:1595 #: templates/js/translated/table_filters.js:196 #: templates/js/translated/table_filters.js:467 @@ -1949,7 +1958,7 @@ msgstr "Baugruppe" msgid "Parts can be assembled from other components by default" msgstr "Teile können standardmäßig aus anderen Teilen angefertigt werden" -#: common/models.py:1028 part/admin.py:38 part/models.py:963 +#: common/models.py:1028 part/admin.py:38 part/models.py:964 #: templates/js/translated/table_filters.js:475 msgid "Component" msgstr "Komponente" @@ -1958,7 +1967,7 @@ msgstr "Komponente" msgid "Parts can be used as sub-components by default" msgstr "Teile können standardmäßig in Baugruppen benutzt werden" -#: common/models.py:1035 part/admin.py:39 part/models.py:974 +#: common/models.py:1035 part/admin.py:39 part/models.py:975 msgid "Purchaseable" msgstr "Kaufbar" @@ -1966,7 +1975,7 @@ msgstr "Kaufbar" msgid "Parts are purchaseable by default" msgstr "Artikel sind grundsätzlich kaufbar" -#: common/models.py:1042 part/admin.py:40 part/models.py:979 +#: common/models.py:1042 part/admin.py:40 part/models.py:980 #: templates/js/translated/table_filters.js:496 msgid "Salable" msgstr "Verkäuflich" @@ -1975,10 +1984,10 @@ msgstr "Verkäuflich" msgid "Parts are salable by default" msgstr "Artikel sind grundsätzlich verkaufbar" -#: common/models.py:1049 part/admin.py:42 part/models.py:969 +#: common/models.py:1049 part/admin.py:42 part/models.py:970 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:120 -#: templates/js/translated/table_filters.js:508 +#: templates/js/translated/table_filters.js:512 msgid "Trackable" msgstr "Nachverfolgbar" @@ -1986,10 +1995,10 @@ msgstr "Nachverfolgbar" msgid "Parts are trackable by default" msgstr "Artikel sind grundsätzlich verfolgbar" -#: common/models.py:1056 part/admin.py:43 part/models.py:989 +#: common/models.py:1056 part/admin.py:43 part/models.py:990 #: part/templates/part/part_base.html:156 #: templates/js/translated/table_filters.js:42 -#: templates/js/translated/table_filters.js:512 +#: templates/js/translated/table_filters.js:516 msgid "Virtual" msgstr "Virtuell" @@ -2417,7 +2426,7 @@ msgstr "Ereignis-Integration aktivieren" msgid "Enable plugins to respond to internal events" msgstr "Plugins ermöglichen auf interne Ereignisse zu reagieren" -#: common/models.py:1461 common/models.py:1803 +#: common/models.py:1461 common/models.py:1810 msgid "Settings key (must be unique - case insensitive" msgstr "Einstellungs-Schlüssel (muss einzigartig sein, Groß-/ Kleinschreibung wird nicht beachtet)" @@ -2749,41 +2758,50 @@ msgstr "Teilzeitplanung" msgid "Display part scheduling information" msgstr "Zeige Zeitplanung für Teile" -#: common/models.py:1778 -msgid "Table String Length" +#: common/models.py:1778 part/templates/part/detail.html:61 +#: templates/js/translated/part.js:822 +msgid "Part Stocktake" msgstr "" #: common/models.py:1779 +msgid "Display part stocktake information" +msgstr "" + +#: common/models.py:1785 +msgid "Table String Length" +msgstr "" + +#: common/models.py:1786 msgid "Maximimum length limit for strings displayed in table views" msgstr "" -#: common/models.py:1843 +#: common/models.py:1850 msgid "Price break quantity" msgstr "Preisstaffelungs Anzahl" -#: common/models.py:1850 company/serializers.py:393 order/models.py:975 -#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1145 +#: common/models.py:1857 company/serializers.py:393 order/models.py:975 +#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1416 #: templates/js/translated/pricing.js:354 msgid "Price" msgstr "Preis" -#: common/models.py:1851 +#: common/models.py:1858 msgid "Unit price at specified quantity" msgstr "Stückpreis für die angegebene Anzahl" -#: common/models.py:2011 common/models.py:2189 +#: common/models.py:2018 common/models.py:2196 msgid "Endpoint" msgstr "Endpunkt" -#: common/models.py:2012 +#: common/models.py:2019 msgid "Endpoint at which this webhook is received" msgstr "Endpunkt, an dem dieser Webhook empfangen wird" -#: common/models.py:2021 +#: common/models.py:2028 msgid "Name for this webhook" msgstr "Name für diesen Webhook" -#: common/models.py:2026 part/admin.py:36 part/models.py:984 +#: common/models.py:2033 part/admin.py:36 part/models.py:985 #: plugin/models.py:100 templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:116 #: templates/js/translated/table_filters.js:336 @@ -2791,131 +2809,133 @@ msgstr "Name für diesen Webhook" msgid "Active" msgstr "Aktiv" -#: common/models.py:2027 +#: common/models.py:2034 msgid "Is this webhook active" msgstr "Ist dieser Webhook aktiv" -#: common/models.py:2041 +#: common/models.py:2048 msgid "Token" msgstr "Token" -#: common/models.py:2042 +#: common/models.py:2049 msgid "Token for access" msgstr "Token für Zugang" -#: common/models.py:2049 +#: common/models.py:2056 msgid "Secret" msgstr "Geheimnis" -#: common/models.py:2050 +#: common/models.py:2057 msgid "Shared secret for HMAC" msgstr "Shared Secret für HMAC" -#: common/models.py:2156 +#: common/models.py:2163 msgid "Message ID" msgstr "Nachrichten-ID" -#: common/models.py:2157 +#: common/models.py:2164 msgid "Unique identifier for this message" msgstr "Eindeutige Kennung für diese Nachricht" -#: common/models.py:2165 +#: common/models.py:2172 msgid "Host" msgstr "Host" -#: common/models.py:2166 +#: common/models.py:2173 msgid "Host from which this message was received" msgstr "Host von dem diese Nachricht empfangen wurde" -#: common/models.py:2173 +#: common/models.py:2180 msgid "Header" msgstr "Kopfzeile" -#: common/models.py:2174 +#: common/models.py:2181 msgid "Header of this message" msgstr "Header dieser Nachricht" -#: common/models.py:2180 +#: common/models.py:2187 msgid "Body" msgstr "Body" -#: common/models.py:2181 +#: common/models.py:2188 msgid "Body of this message" msgstr "Body dieser Nachricht" -#: common/models.py:2190 +#: common/models.py:2197 msgid "Endpoint on which this message was received" msgstr "Endpunkt, über den diese Nachricht empfangen wurde" -#: common/models.py:2195 +#: common/models.py:2202 msgid "Worked on" msgstr "Bearbeitet" -#: common/models.py:2196 +#: common/models.py:2203 msgid "Was the work on this message finished?" msgstr "Wurde die Arbeit an dieser Nachricht abgeschlossen?" -#: common/models.py:2355 +#: common/models.py:2362 msgid "Id" msgstr "" -#: common/models.py:2361 templates/js/translated/news.js:35 +#: common/models.py:2368 templates/js/translated/news.js:35 msgid "Title" msgstr "" -#: common/models.py:2371 templates/js/translated/news.js:51 +#: common/models.py:2378 templates/js/translated/news.js:51 msgid "Published" msgstr "" -#: common/models.py:2376 templates/InvenTree/settings/plugin.html:62 +#: common/models.py:2383 templates/InvenTree/settings/plugin.html:62 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/news.js:47 msgid "Author" msgstr "Autor" -#: common/models.py:2381 templates/js/translated/news.js:43 +#: common/models.py:2388 templates/js/translated/news.js:43 msgid "Summary" msgstr "" -#: common/models.py:2386 +#: common/models.py:2393 msgid "Read" msgstr "" -#: common/models.py:2387 +#: common/models.py:2394 msgid "Was this news item read?" msgstr "" -#: common/notifications.py:293 +#: common/notifications.py:294 #, python-brace-format msgid "New {verbose_name}" msgstr "Neue {verbose_name}" -#: common/notifications.py:295 +#: common/notifications.py:296 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:301 +#: common/notifications.py:302 msgid "Items Received" msgstr "" -#: common/notifications.py:303 +#: common/notifications.py:304 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:415 +#: common/notifications.py:416 msgid "Error raised by plugin" msgstr "" #: common/views.py:85 order/templates/order/order_wizard/po_upload.html:51 #: order/templates/order/purchase_order_detail.html:25 order/views.py:102 -#: part/views.py:107 templates/patterns/wizard/upload.html:37 +#: part/templates/part/import_wizard/part_upload.html:58 part/views.py:109 +#: templates/patterns/wizard/upload.html:37 msgid "Upload File" msgstr "Datei hochgeladen" #: common/views.py:86 order/templates/order/order_wizard/match_fields.html:52 #: order/views.py:103 #: part/templates/part/import_wizard/ajax_match_fields.html:45 -#: part/views.py:108 templates/patterns/wizard/match_fields.html:51 +#: part/templates/part/import_wizard/match_fields.html:52 part/views.py:110 +#: templates/patterns/wizard/match_fields.html:51 msgid "Match Fields" msgstr "Übereinstimmende Felder" @@ -2934,7 +2954,9 @@ msgstr "Teile importiert" #: common/views.py:509 order/templates/order/order_wizard/match_fields.html:27 #: order/templates/order/order_wizard/match_parts.html:19 #: order/templates/order/order_wizard/po_upload.html:49 +#: part/templates/part/import_wizard/match_fields.html:27 #: part/templates/part/import_wizard/match_references.html:19 +#: part/templates/part/import_wizard/part_upload.html:56 #: templates/patterns/wizard/match_fields.html:26 #: templates/patterns/wizard/upload.html:35 msgid "Previous Step" @@ -2995,7 +3017,7 @@ msgstr "Anlaufstelle" msgid "Link to external company information" msgstr "Link auf externe Firmeninformation" -#: company/models.py:140 part/models.py:878 +#: company/models.py:140 part/models.py:879 msgid "Image" msgstr "Bild" @@ -3028,8 +3050,8 @@ msgid "Does this company manufacture parts?" msgstr "Produziert diese Firma Teile?" #: company/models.py:153 company/serializers.py:399 -#: company/templates/company/company_base.html:107 part/models.py:2762 -#: part/serializers.py:154 part/serializers.py:182 stock/serializers.py:182 +#: company/templates/company/company_base.html:107 part/models.py:2780 +#: part/serializers.py:156 part/serializers.py:184 stock/serializers.py:182 #: templates/InvenTree/settings/pricing.html:64 msgid "Currency" msgstr "Währung" @@ -3055,12 +3077,12 @@ msgstr "Teil auswählen" #: templates/js/translated/company.js:433 #: templates/js/translated/company.js:534 #: templates/js/translated/company.js:669 -#: templates/js/translated/company.js:957 templates/js/translated/part.js:238 +#: templates/js/translated/company.js:957 templates/js/translated/part.js:241 #: templates/js/translated/table_filters.js:439 msgid "Manufacturer" msgstr "Hersteller" -#: company/models.py:269 templates/js/translated/part.js:239 +#: company/models.py:269 templates/js/translated/part.js:242 msgid "Select manufacturer" msgstr "Hersteller auswählen" @@ -3070,11 +3092,11 @@ msgstr "Hersteller auswählen" #: templates/js/translated/company.js:533 #: templates/js/translated/company.js:685 #: templates/js/translated/company.js:976 templates/js/translated/order.js:2286 -#: templates/js/translated/part.js:249 templates/js/translated/part.js:1067 +#: templates/js/translated/part.js:252 templates/js/translated/part.js:1338 msgid "MPN" msgstr "MPN" -#: company/models.py:276 templates/js/translated/part.js:250 +#: company/models.py:276 templates/js/translated/part.js:253 msgid "Manufacturer Part Number" msgstr "Hersteller-Teilenummer" @@ -3100,8 +3122,8 @@ msgstr "Parametername" #: company/models.py:370 #: report/templates/report/inventree_test_report_base.html:95 #: stock/models.py:2156 templates/js/translated/company.js:582 -#: templates/js/translated/company.js:800 templates/js/translated/part.js:889 -#: templates/js/translated/stock.js:1399 +#: templates/js/translated/company.js:800 templates/js/translated/part.js:1160 +#: templates/js/translated/stock.js:1398 msgid "Value" msgstr "Wert" @@ -3109,10 +3131,10 @@ msgstr "Wert" msgid "Parameter value" msgstr "Parameterwert" -#: company/models.py:377 part/admin.py:26 part/models.py:951 -#: part/models.py:3128 part/templates/part/part_base.html:286 -#: templates/InvenTree/settings/settings.html:349 -#: templates/js/translated/company.js:806 templates/js/translated/part.js:895 +#: company/models.py:377 part/admin.py:26 part/models.py:952 +#: part/models.py:3206 part/templates/part/part_base.html:286 +#: templates/InvenTree/settings/settings.html:350 +#: templates/js/translated/company.js:806 templates/js/translated/part.js:1166 msgid "Units" msgstr "Einheiten" @@ -3132,24 +3154,24 @@ msgstr "Verlinktes Herstellerteil muss dasselbe Basisteil referenzieren" #: templates/js/translated/company.js:304 #: templates/js/translated/company.js:437 #: templates/js/translated/company.js:930 templates/js/translated/order.js:2017 -#: templates/js/translated/part.js:219 templates/js/translated/part.js:1035 +#: templates/js/translated/part.js:222 templates/js/translated/part.js:1306 #: templates/js/translated/pricing.js:231 #: templates/js/translated/table_filters.js:443 msgid "Supplier" msgstr "Zulieferer" -#: company/models.py:498 templates/js/translated/part.js:220 +#: company/models.py:498 templates/js/translated/part.js:223 msgid "Select supplier" msgstr "Zulieferer auswählen" #: company/models.py:503 company/templates/company/supplier_part.html:146 #: part/bom.py:253 part/bom.py:281 templates/js/translated/company.js:303 -#: templates/js/translated/order.js:2273 templates/js/translated/part.js:230 -#: templates/js/translated/part.js:1053 templates/js/translated/pricing.js:243 +#: templates/js/translated/order.js:2273 templates/js/translated/part.js:233 +#: templates/js/translated/part.js:1324 templates/js/translated/pricing.js:243 msgid "SKU" msgstr "SKU (Lagerbestandseinheit)" -#: company/models.py:504 templates/js/translated/part.js:231 +#: company/models.py:504 templates/js/translated/part.js:234 msgid "Supplier stock keeping unit" msgstr "Lagerbestandseinheit (SKU) des Zulieferers" @@ -3166,24 +3188,25 @@ msgid "Supplier part description" msgstr "Zuliefererbeschreibung des Teils" #: company/models.py:528 company/templates/company/supplier_part.html:181 -#: part/admin.py:225 part/models.py:3381 part/templates/part/upload_bom.html:59 +#: part/admin.py:258 part/models.py:3459 part/templates/part/upload_bom.html:59 +#: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:397 msgid "Note" msgstr "Notiz" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "base cost" msgstr "Basiskosten" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "Minimum charge (e.g. stocking fee)" msgstr "Mindestpreis" #: company/models.py:534 company/templates/company/supplier_part.html:167 #: stock/admin.py:101 stock/models.py:682 #: stock/templates/stock/item_base.html:243 -#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2016 +#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2011 msgid "Packaging" msgstr "Verpackungen" @@ -3196,7 +3219,7 @@ msgstr "Teile-Verpackungen" #: templates/js/translated/company.js:997 templates/js/translated/order.js:826 #: templates/js/translated/order.js:1253 templates/js/translated/order.js:1508 #: templates/js/translated/order.js:2317 templates/js/translated/order.js:2334 -#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1137 +#: templates/js/translated/part.js:1356 templates/js/translated/part.js:1408 msgid "Pack Quantity" msgstr "Packungsmenge" @@ -3204,7 +3227,7 @@ msgstr "Packungsmenge" msgid "Unit quantity supplied in a single pack" msgstr "" -#: company/models.py:544 part/models.py:1863 +#: company/models.py:544 part/models.py:1869 msgid "multiple" msgstr "Vielfache" @@ -3216,8 +3239,8 @@ msgstr "Mehrere bestellen" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:1118 templates/js/translated/build.js:1883 -#: templates/js/translated/build.js:2770 templates/js/translated/part.js:623 -#: templates/js/translated/part.js:626 +#: templates/js/translated/build.js:2770 templates/js/translated/part.js:626 +#: templates/js/translated/part.js:629 #: templates/js/translated/table_filters.js:206 msgid "Available" msgstr "Verfügbar" @@ -3300,7 +3323,7 @@ msgstr "" #: stock/templates/stock/item_base.html:399 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:429 templates/js/translated/order.js:2827 -#: templates/js/translated/stock.js:2607 +#: templates/js/translated/stock.js:2602 #: templates/js/translated/table_filters.js:447 msgid "Customer" msgstr "Kunde" @@ -3314,7 +3337,7 @@ msgid "Phone" msgstr "Telefon" #: company/templates/company/company_base.html:206 -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:525 msgid "Remove Image" msgstr "" @@ -3323,19 +3346,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:209 -#: part/templates/part/part_base.html:514 +#: part/templates/part/part_base.html:528 #: templates/InvenTree/settings/user.html:87 #: templates/InvenTree/settings/user.html:149 msgid "Remove" msgstr "Entfernen" #: company/templates/company/company_base.html:238 -#: part/templates/part/part_base.html:543 +#: part/templates/part/part_base.html:557 msgid "Upload Image" msgstr "Bild hochladen" #: company/templates/company/company_base.html:253 -#: part/templates/part/part_base.html:598 +#: part/templates/part/part_base.html:612 msgid "Download Image" msgstr "Bild herunterladen" @@ -3351,7 +3374,7 @@ msgstr "Neues Zuliefererteil anlegen" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:357 +#: part/templates/part/detail.html:380 msgid "New Supplier Part" msgstr "Neues Zuliefererteil" @@ -3380,7 +3403,7 @@ msgstr "Herstellerteile" msgid "Create new manufacturer part" msgstr "Neues Herstellerteil anlegen" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:387 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:410 msgid "New Manufacturer Part" msgstr "Neues Herstellerteil" @@ -3394,9 +3417,9 @@ msgstr "Zulieferer-Bestand" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:35 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:35 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:200 -#: templates/InvenTree/settings/sidebar.html:49 +#: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:293 templates/navbar.html:50 #: users/models.py:42 msgid "Purchase Orders" @@ -3417,9 +3440,9 @@ msgstr "Neue Bestellung" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:39 +#: part/templates/part/detail.html:130 part/templates/part/part_sidebar.html:39 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:220 -#: templates/InvenTree/settings/sidebar.html:51 +#: templates/InvenTree/settings/sidebar.html:53 #: templates/js/translated/search.js:317 templates/navbar.html:61 #: users/models.py:43 msgid "Sales Orders" @@ -3451,7 +3474,7 @@ msgstr "Hersteller" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:221 -#: part/templates/part/detail.html:87 part/templates/part/part_base.html:85 +#: part/templates/part/detail.html:110 part/templates/part/part_base.html:85 msgid "Order part" msgstr "Teil bestellen" @@ -3482,28 +3505,28 @@ msgid "Suppliers" msgstr "Zulieferer" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:368 +#: part/templates/part/detail.html:391 msgid "Delete supplier parts" msgstr "Zuliefererteil entfernen" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:369 part/templates/part/detail.html:399 -#: templates/js/translated/forms.js:455 templates/js/translated/helpers.js:38 -#: templates/js/translated/part.js:351 templates/js/translated/stock.js:188 -#: users/models.py:224 +#: part/templates/part/detail.html:392 part/templates/part/detail.html:422 +#: templates/js/translated/forms.js:458 templates/js/translated/helpers.js:38 +#: templates/js/translated/part.js:354 templates/js/translated/stock.js:187 +#: users/models.py:225 msgid "Delete" msgstr "Löschen" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:184 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:207 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "Parameter" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:189 +#: part/templates/part/detail.html:212 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:62 msgid "New Parameter" @@ -3514,7 +3537,7 @@ msgid "Delete parameters" msgstr "Parameter löschen" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:825 +#: part/templates/part/detail.html:865 msgid "Add Parameter" msgstr "Parameter hinzufügen" @@ -3538,7 +3561,7 @@ msgstr "Zugewiesene Lagerartikel" #: company/templates/company/supplier_part.html:24 stock/models.py:665 #: stock/templates/stock/item_base.html:236 #: templates/js/translated/company.js:946 templates/js/translated/order.js:1173 -#: templates/js/translated/stock.js:1974 +#: templates/js/translated/stock.js:1969 msgid "Supplier Part" msgstr "Zuliefererteil" @@ -3578,7 +3601,7 @@ msgstr "" #: company/templates/company/supplier_part.html:56 #: company/templates/company/supplier_part.html:57 #: company/templates/company/supplier_part.html:222 -#: part/templates/part/detail.html:88 +#: part/templates/part/detail.html:111 msgid "Order Part" msgstr "Teil bestellen" @@ -3630,7 +3653,7 @@ msgstr "Neuen Lagerartikel hinzufügen" #: company/templates/company/supplier_part.html:204 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:198 -#: templates/js/translated/stock.js:467 +#: templates/js/translated/stock.js:466 msgid "New Stock Item" msgstr "Neuer Lagerartikel" @@ -3662,10 +3685,10 @@ msgstr "Teilverfügbarkeit aktualisieren" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 -#: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/part.js:777 templates/js/translated/part.js:1378 -#: templates/js/translated/part.js:1534 templates/js/translated/stock.js:994 -#: templates/js/translated/stock.js:1799 templates/navbar.html:31 +#: templates/InvenTree/settings/sidebar.html:47 +#: templates/js/translated/part.js:1048 templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1805 templates/js/translated/stock.js:993 +#: templates/js/translated/stock.js:1794 templates/navbar.html:31 msgid "Stock" msgstr "Bestand" @@ -3680,7 +3703,7 @@ msgstr "Zuliefererteil Bepreisung" #: company/templates/company/supplier_part_navbar.html:29 #: part/templates/part/part_sidebar.html:30 -#: templates/InvenTree/settings/sidebar.html:35 +#: templates/InvenTree/settings/sidebar.html:37 msgid "Pricing" msgstr "Bepreisung" @@ -3692,7 +3715,7 @@ msgstr "Bepreisung" #: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:155 templates/js/translated/search.js:225 -#: templates/js/translated/stock.js:2484 users/models.py:40 +#: templates/js/translated/stock.js:2479 users/models.py:40 msgid "Stock Items" msgstr "Lagerartikel" @@ -3801,9 +3824,9 @@ msgstr "" #: stock/templates/stock/item_base.html:182 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:619 templates/js/translated/order.js:1174 -#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1012 -#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1954 -#: templates/js/translated/stock.js:2588 +#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1283 +#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1949 +#: templates/js/translated/stock.js:2583 msgid "Purchase Order" msgstr "Bestellung" @@ -3973,7 +3996,7 @@ msgstr "Zuliefererteil" #: order/models.py:1046 order/templates/order/order_base.html:178 #: templates/js/translated/order.js:1679 templates/js/translated/order.js:2404 -#: templates/js/translated/part.js:1129 templates/js/translated/part.js:1161 +#: templates/js/translated/part.js:1400 templates/js/translated/part.js:1432 #: templates/js/translated/table_filters.js:358 msgid "Received" msgstr "Empfangen" @@ -3984,7 +4007,7 @@ msgstr "Empfangene Objekt-Anzahl" #: order/models.py:1054 stock/models.py:800 stock/serializers.py:173 #: stock/templates/stock/item_base.html:189 -#: templates/js/translated/stock.js:2005 +#: templates/js/translated/stock.js:2000 msgid "Purchase Price" msgstr "Preis" @@ -4350,18 +4373,21 @@ msgstr "Gesamtkosten konnten nicht berechnet werden" #: order/templates/order/order_wizard/match_fields.html:9 #: part/templates/part/import_wizard/ajax_match_fields.html:9 +#: part/templates/part/import_wizard/match_fields.html:9 #: templates/patterns/wizard/match_fields.html:8 msgid "Missing selections for the following required columns" msgstr "Es fehlt eine Auswahl für die folgende benötigte Spalte" #: order/templates/order/order_wizard/match_fields.html:20 #: part/templates/part/import_wizard/ajax_match_fields.html:20 +#: part/templates/part/import_wizard/match_fields.html:20 #: templates/patterns/wizard/match_fields.html:19 msgid "Duplicate selections found, see below. Fix them then retry submitting." msgstr "Doppelte Auswahlen gefunden, siehe unten. Reparieren und erneut versuchen." #: order/templates/order/order_wizard/match_fields.html:29 #: order/templates/order/order_wizard/match_parts.html:21 +#: part/templates/part/import_wizard/match_fields.html:29 #: part/templates/part/import_wizard/match_references.html:21 #: templates/patterns/wizard/match_fields.html:28 msgid "Submit Selections" @@ -4369,18 +4395,21 @@ msgstr "Auswahl übertragen" #: order/templates/order/order_wizard/match_fields.html:35 #: part/templates/part/import_wizard/ajax_match_fields.html:28 +#: part/templates/part/import_wizard/match_fields.html:35 #: templates/patterns/wizard/match_fields.html:34 msgid "File Fields" msgstr "Datei-Felder" #: order/templates/order/order_wizard/match_fields.html:42 #: part/templates/part/import_wizard/ajax_match_fields.html:35 +#: part/templates/part/import_wizard/match_fields.html:42 #: templates/patterns/wizard/match_fields.html:41 msgid "Remove column" msgstr "Spalte entfernen" #: order/templates/order/order_wizard/match_fields.html:60 #: part/templates/part/import_wizard/ajax_match_fields.html:53 +#: part/templates/part/import_wizard/match_fields.html:60 #: templates/patterns/wizard/match_fields.html:59 msgid "Duplicate selection" msgstr "Auswahl duplizieren" @@ -4389,12 +4418,13 @@ msgstr "Auswahl duplizieren" #: order/templates/order/order_wizard/match_parts.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: 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:102 templates/js/translated/build.js:485 #: templates/js/translated/build.js:641 templates/js/translated/build.js:2088 #: templates/js/translated/order.js:1122 templates/js/translated/order.js:1624 -#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:657 -#: templates/js/translated/stock.js:825 +#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:824 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "Zeile entfernen" @@ -4429,6 +4459,7 @@ msgstr "Bestellung ist bereits verarbeitet. Dateien können nicht hochgeladen we #: order/templates/order/order_wizard/po_upload.html:27 #: part/templates/part/import_wizard/ajax_part_upload.html:10 +#: part/templates/part/import_wizard/part_upload.html:26 #: templates/patterns/wizard/upload.html:13 #, python-format msgid "Step %(step)s of %(count)s" @@ -4567,12 +4598,12 @@ 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:19 part/admin.py:219 part/models.py:3262 stock/admin.py:84 +#: part/admin.py:19 part/admin.py:252 part/models.py:3340 stock/admin.py:84 #: templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "Teil-ID" -#: part/admin.py:20 part/admin.py:221 part/models.py:3266 stock/admin.py:85 +#: part/admin.py:20 part/admin.py:254 part/models.py:3344 stock/admin.py:85 msgid "Part Name" msgstr "Name des Teils" @@ -4580,32 +4611,32 @@ msgstr "Name des Teils" msgid "Part Description" msgstr "" -#: part/admin.py:22 part/models.py:852 part/templates/part/part_base.html:272 -#: templates/js/translated/part.js:763 templates/js/translated/part.js:1491 -#: templates/js/translated/stock.js:1765 +#: part/admin.py:22 part/models.py:853 part/templates/part/part_base.html:272 +#: templates/js/translated/part.js:1034 templates/js/translated/part.js:1762 +#: templates/js/translated/stock.js:1760 msgid "IPN" msgstr "IPN (Interne Produktnummer)" -#: part/admin.py:23 part/models.py:860 part/templates/part/part_base.html:279 -#: report/models.py:171 templates/js/translated/part.js:768 +#: part/admin.py:23 part/models.py:861 part/templates/part/part_base.html:279 +#: report/models.py:171 templates/js/translated/part.js:1039 msgid "Revision" msgstr "Version" -#: part/admin.py:24 part/admin.py:145 part/models.py:838 +#: part/admin.py:24 part/admin.py:178 part/models.py:839 #: part/templates/part/category.html:87 part/templates/part/part_base.html:300 msgid "Keywords" msgstr "Schlüsselwörter" -#: part/admin.py:28 part/admin.py:139 +#: part/admin.py:28 part/admin.py:172 #: templates/js/translated/model_renderers.js:338 msgid "Category ID" msgstr "Kategorie-ID" -#: part/admin.py:29 part/admin.py:140 +#: part/admin.py:29 part/admin.py:173 msgid "Category Name" msgstr "" -#: part/admin.py:30 part/admin.py:144 +#: part/admin.py:30 part/admin.py:177 msgid "Default Location ID" msgstr "" @@ -4613,7 +4644,7 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:33 part/models.py:944 part/templates/part/part_base.html:206 +#: part/admin.py:33 part/models.py:945 part/templates/part/part_base.html:206 msgid "Minimum Stock" msgstr "Minimaler Bestand" @@ -4625,8 +4656,8 @@ msgstr "Auf Lager" #: part/admin.py:48 part/bom.py:145 part/templates/part/part_base.html:213 #: templates/js/translated/bom.js:1156 templates/js/translated/build.js:1935 -#: templates/js/translated/part.js:613 templates/js/translated/part.js:633 -#: templates/js/translated/part.js:1381 templates/js/translated/part.js:1559 +#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 +#: templates/js/translated/part.js:1652 templates/js/translated/part.js:1830 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "Bestellt" @@ -4642,115 +4673,115 @@ msgid "Allocated" msgstr "Zugeordnet" #: part/admin.py:51 part/templates/part/part_base.html:244 -#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 -#: templates/js/translated/part.js:1385 templates/js/translated/part.js:1566 +#: templates/js/translated/part.js:619 templates/js/translated/part.js:639 +#: templates/js/translated/part.js:1656 templates/js/translated/part.js:1837 msgid "Building" msgstr "Im Bau" -#: part/admin.py:52 part/models.py:2846 +#: part/admin.py:52 part/models.py:2864 msgid "Minimum Cost" msgstr "" -#: part/admin.py:53 part/models.py:2852 +#: part/admin.py:53 part/models.py:2870 msgid "Maximum Cost" msgstr "" -#: part/admin.py:142 part/admin.py:216 stock/admin.py:26 stock/admin.py:98 +#: part/admin.py:175 part/admin.py:249 stock/admin.py:26 stock/admin.py:98 msgid "Parent ID" msgstr "" -#: part/admin.py:143 part/admin.py:218 stock/admin.py:27 +#: part/admin.py:176 part/admin.py:251 stock/admin.py:27 msgid "Parent Name" msgstr "" -#: part/admin.py:146 part/templates/part/category.html:81 +#: part/admin.py:179 part/templates/part/category.html:81 #: part/templates/part/category.html:94 msgid "Category Path" msgstr "Pfad zur Kategorie" -#: part/admin.py:149 part/models.py:382 part/templates/part/cat_link.html:3 +#: part/admin.py:182 part/models.py:383 part/templates/part/cat_link.html:3 #: part/templates/part/category.html:23 part/templates/part/category.html:134 #: part/templates/part/category.html:154 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:84 -#: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:2065 templates/js/translated/search.js:146 +#: templates/InvenTree/settings/sidebar.html:43 +#: templates/js/translated/part.js:2346 templates/js/translated/search.js:146 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "Teile" -#: part/admin.py:211 +#: part/admin.py:244 msgid "BOM Level" msgstr "" -#: part/admin.py:213 +#: part/admin.py:246 msgid "BOM Item ID" msgstr "" -#: part/admin.py:217 +#: part/admin.py:250 msgid "Parent IPN" msgstr "" -#: part/admin.py:220 part/models.py:3270 +#: part/admin.py:253 part/models.py:3348 msgid "Part IPN" msgstr "Teil-ID" -#: part/admin.py:226 templates/js/translated/pricing.js:91 +#: part/admin.py:259 templates/js/translated/pricing.js:91 #: templates/js/translated/pricing.js:732 msgid "Minimum Price" msgstr "" -#: part/admin.py:227 templates/js/translated/pricing.js:86 +#: part/admin.py:260 templates/js/translated/pricing.js:86 #: templates/js/translated/pricing.js:740 msgid "Maximum Price" msgstr "" -#: part/api.py:536 +#: part/api.py:538 msgid "Incoming Purchase Order" msgstr "Eingehende Bestellung" -#: part/api.py:556 +#: part/api.py:558 msgid "Outgoing Sales Order" msgstr "Ausgehender Auftrag" -#: part/api.py:574 +#: part/api.py:576 msgid "Stock produced by Build Order" msgstr "Lagerartikel produziert von Bauauftrag" -#: part/api.py:660 +#: part/api.py:662 msgid "Stock required for Build Order" msgstr "Lagerartikel für Bauauftrag benötigt" -#: part/api.py:818 +#: part/api.py:820 msgid "Valid" msgstr "Gültig" -#: part/api.py:819 +#: part/api.py:821 msgid "Validate entire Bill of Materials" msgstr "Gesamte Stückliste validieren" -#: part/api.py:825 +#: part/api.py:827 msgid "This option must be selected" msgstr "Diese Option muss ausgewählt werden" -#: part/api.py:1265 +#: part/api.py:1281 msgid "Must be greater than zero" msgstr "Muss größer als 0 sein" -#: part/api.py:1269 +#: part/api.py:1285 msgid "Must be a valid quantity" msgstr "Muss eine gültige Nummer sein" -#: part/api.py:1284 +#: part/api.py:1300 msgid "Specify location for initial part stock" msgstr "Standort für anfänglichen Bestand angeben" -#: part/api.py:1315 part/api.py:1319 part/api.py:1334 part/api.py:1338 +#: part/api.py:1331 part/api.py:1335 part/api.py:1350 part/api.py:1354 msgid "This field is required" msgstr "Dieses Feld ist erforderlich" -#: part/bom.py:142 part/models.py:116 part/models.py:887 -#: part/templates/part/category.html:109 part/templates/part/part_base.html:360 +#: part/bom.py:142 part/models.py:116 part/models.py:888 +#: part/templates/part/category.html:109 part/templates/part/part_base.html:374 msgid "Default Location" msgstr "Standard-Lagerort" @@ -4801,7 +4832,7 @@ msgstr "Symbol (optional)" msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:159 part/models.py:3211 part/templates/part/category.html:16 +#: part/models.py:159 part/models.py:3289 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "Teil-Kategorie" @@ -4812,423 +4843,459 @@ msgstr "Teil-Kategorie" msgid "Part Categories" msgstr "Teil-Kategorien" -#: part/models.py:468 +#: part/models.py:469 msgid "Invalid choice for parent part" msgstr "Ungültige Auswahl für übergeordnetes Teil" -#: part/models.py:538 part/models.py:550 +#: part/models.py:539 part/models.py:551 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "Teil '{p1}' wird in Stückliste für Teil '{p2}' benutzt (rekursiv)" -#: part/models.py:640 +#: part/models.py:641 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:771 +#: part/models.py:772 msgid "Duplicate IPN not allowed in part settings" msgstr "Doppelte IPN in den Teil-Einstellungen nicht erlaubt" -#: part/models.py:776 +#: part/models.py:777 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:790 +#: part/models.py:791 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:808 part/models.py:3267 +#: part/models.py:809 part/models.py:3345 msgid "Part name" msgstr "Name des Teils" -#: part/models.py:815 +#: part/models.py:816 msgid "Is Template" msgstr "Ist eine Vorlage" -#: part/models.py:816 +#: part/models.py:817 msgid "Is this part a template part?" msgstr "Ist dieses Teil eine Vorlage?" -#: part/models.py:826 +#: part/models.py:827 msgid "Is this part a variant of another part?" msgstr "Ist dieses Teil eine Variante eines anderen Teils?" -#: part/models.py:827 +#: part/models.py:828 msgid "Variant Of" msgstr "Variante von" -#: part/models.py:833 +#: part/models.py:834 msgid "Part description" msgstr "Beschreibung des Teils" -#: part/models.py:839 +#: part/models.py:840 msgid "Part keywords to improve visibility in search results" msgstr "Schlüsselworte um die Sichtbarkeit in Suchergebnissen zu verbessern" -#: part/models.py:846 part/models.py:2966 part/models.py:3210 +#: part/models.py:847 part/models.py:3044 part/models.py:3288 #: part/templates/part/part_base.html:263 -#: templates/InvenTree/settings/settings.html:229 +#: templates/InvenTree/settings/settings.html:230 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1513 templates/js/translated/part.js:1770 +#: templates/js/translated/part.js:1784 templates/js/translated/part.js:2051 msgid "Category" msgstr "Kategorie" -#: part/models.py:847 +#: part/models.py:848 msgid "Part category" msgstr "Teile-Kategorie" -#: part/models.py:853 +#: part/models.py:854 msgid "Internal Part Number" msgstr "Interne Teilenummer" -#: part/models.py:859 +#: part/models.py:860 msgid "Part revision or version number" msgstr "Revisions- oder Versionsnummer" -#: part/models.py:885 +#: part/models.py:886 msgid "Where is this item normally stored?" msgstr "Wo wird dieses Teil normalerweise gelagert?" -#: part/models.py:930 part/templates/part/part_base.html:369 +#: part/models.py:931 part/templates/part/part_base.html:383 msgid "Default Supplier" msgstr "Standard Zulieferer" -#: part/models.py:931 +#: part/models.py:932 msgid "Default supplier part" msgstr "Standard Zuliefererteil" -#: part/models.py:938 +#: part/models.py:939 msgid "Default Expiry" msgstr "Standard Ablaufzeit" -#: part/models.py:939 +#: part/models.py:940 msgid "Expiry time (in days) for stock items of this part" msgstr "Ablauf-Zeit (in Tagen) für Bestand dieses Teils" -#: part/models.py:945 +#: part/models.py:946 msgid "Minimum allowed stock level" msgstr "Minimal zulässiger Bestand" -#: part/models.py:952 +#: part/models.py:953 msgid "Stock keeping units for this part" msgstr "Stock Keeping Units (SKU) für dieses Teil" -#: part/models.py:958 +#: part/models.py:959 msgid "Can this part be built from other parts?" msgstr "Kann dieses Teil aus anderen Teilen angefertigt werden?" -#: part/models.py:964 +#: part/models.py:965 msgid "Can this part be used to build other parts?" msgstr "Kann dieses Teil zum Bauauftrag von anderen genutzt werden?" -#: part/models.py:970 +#: part/models.py:971 msgid "Does this part have tracking for unique items?" msgstr "Hat dieses Teil Tracking für einzelne Objekte?" -#: part/models.py:975 +#: part/models.py:976 msgid "Can this part be purchased from external suppliers?" msgstr "Kann dieses Teil von externen Zulieferern gekauft werden?" -#: part/models.py:980 +#: part/models.py:981 msgid "Can this part be sold to customers?" msgstr "Kann dieses Teil an Kunden verkauft werden?" -#: part/models.py:985 +#: part/models.py:986 msgid "Is this part active?" msgstr "Ist dieses Teil aktiv?" -#: part/models.py:990 +#: part/models.py:991 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:992 +#: part/models.py:993 msgid "Part notes" msgstr "Teile-Notizen" -#: part/models.py:994 +#: part/models.py:995 msgid "BOM checksum" msgstr "Prüfsumme der Stückliste" -#: part/models.py:994 +#: part/models.py:995 msgid "Stored BOM checksum" msgstr "Prüfsumme der Stückliste gespeichert" -#: part/models.py:997 +#: part/models.py:998 msgid "BOM checked by" msgstr "Stückliste kontrolliert von" -#: part/models.py:999 +#: part/models.py:1000 msgid "BOM checked date" msgstr "BOM Kontrolldatum" -#: part/models.py:1003 +#: part/models.py:1004 msgid "Creation User" msgstr "Erstellungs-Nutzer" -#: part/models.py:1863 +#: part/models.py:1010 part/templates/part/part_base.html:345 +#: stock/templates/stock/item_base.html:445 +#: templates/js/translated/part.js:1901 +msgid "Last Stocktake" +msgstr "Letzte Inventur" + +#: part/models.py:1869 msgid "Sell multiple" msgstr "Mehrere verkaufen" -#: part/models.py:2763 +#: part/models.py:2781 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:2768 +#: part/models.py:2786 templates/js/translated/part.js:806 msgid "Updated" msgstr "" -#: part/models.py:2769 +#: part/models.py:2787 msgid "Timestamp of last pricing update" msgstr "" -#: part/models.py:2786 +#: part/models.py:2804 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:2787 +#: part/models.py:2805 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:2792 +#: part/models.py:2810 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:2793 +#: part/models.py:2811 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:2798 +#: part/models.py:2816 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:2799 +#: part/models.py:2817 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:2804 +#: part/models.py:2822 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:2805 +#: part/models.py:2823 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:2810 +#: part/models.py:2828 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:2811 +#: part/models.py:2829 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:2816 +#: part/models.py:2834 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:2817 +#: part/models.py:2835 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:2822 +#: part/models.py:2840 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:2823 +#: part/models.py:2841 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:2828 +#: part/models.py:2846 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:2829 +#: part/models.py:2847 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:2834 +#: part/models.py:2852 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:2835 +#: part/models.py:2853 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:2840 +#: part/models.py:2858 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:2841 +#: part/models.py:2859 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:2847 +#: part/models.py:2865 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:2853 +#: part/models.py:2871 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:2858 +#: part/models.py:2876 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:2859 +#: part/models.py:2877 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:2864 +#: part/models.py:2882 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:2865 +#: part/models.py:2883 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:2870 +#: part/models.py:2888 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:2871 +#: part/models.py:2889 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:2876 +#: part/models.py:2894 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:2877 +#: part/models.py:2895 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3013 +#: part/models.py:2913 +msgid "Part for stocktake" +msgstr "" + +#: part/models.py:2920 +msgid "Total available stock at time of stocktake" +msgstr "" + +#: part/models.py:2924 part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:63 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:2043 templates/js/translated/part.js:887 +#: templates/js/translated/pricing.js:537 +#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2511 +msgid "Date" +msgstr "Datum" + +#: part/models.py:2925 +msgid "Date stocktake was performed" +msgstr "" + +#: part/models.py:2933 +msgid "Additional notes" +msgstr "" + +#: part/models.py:2941 +msgid "User who performed this stocktake" +msgstr "" + +#: part/models.py:3091 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:3030 +#: part/models.py:3108 msgid "Test with this name already exists for this part" msgstr "Ein Test mit diesem Namen besteht bereits für dieses Teil" -#: part/models.py:3050 templates/js/translated/part.js:2116 -#: templates/js/translated/stock.js:1379 +#: part/models.py:3128 templates/js/translated/part.js:2397 +#: templates/js/translated/stock.js:1378 msgid "Test Name" msgstr "Test-Name" -#: part/models.py:3051 +#: part/models.py:3129 msgid "Enter a name for the test" msgstr "Namen für diesen Test eingeben" -#: part/models.py:3056 +#: part/models.py:3134 msgid "Test Description" msgstr "Test-Beschreibung" -#: part/models.py:3057 +#: part/models.py:3135 msgid "Enter description for this test" msgstr "Beschreibung für diesen Test eingeben" -#: part/models.py:3062 templates/js/translated/part.js:2125 +#: part/models.py:3140 templates/js/translated/part.js:2406 #: templates/js/translated/table_filters.js:322 msgid "Required" msgstr "Benötigt" -#: part/models.py:3063 +#: part/models.py:3141 msgid "Is this test required to pass?" msgstr "Muss dieser Test erfolgreich sein?" -#: part/models.py:3068 templates/js/translated/part.js:2133 +#: part/models.py:3146 templates/js/translated/part.js:2414 msgid "Requires Value" msgstr "Erfordert Wert" -#: part/models.py:3069 +#: part/models.py:3147 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:3074 templates/js/translated/part.js:2140 +#: part/models.py:3152 templates/js/translated/part.js:2421 msgid "Requires Attachment" msgstr "Anhang muss eingegeben werden" -#: part/models.py:3075 +#: part/models.py:3153 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:3116 +#: part/models.py:3194 msgid "Parameter template name must be unique" msgstr "Vorlagen-Name des Parameters muss eindeutig sein" -#: part/models.py:3124 +#: part/models.py:3202 msgid "Parameter Name" msgstr "Name des Parameters" -#: part/models.py:3128 +#: part/models.py:3206 msgid "Parameter Units" msgstr "Einheit des Parameters" -#: part/models.py:3133 +#: part/models.py:3211 msgid "Parameter description" msgstr "" -#: part/models.py:3166 +#: part/models.py:3244 msgid "Parent Part" msgstr "Ausgangsteil" -#: part/models.py:3168 part/models.py:3216 part/models.py:3217 -#: templates/InvenTree/settings/settings.html:224 +#: part/models.py:3246 part/models.py:3294 part/models.py:3295 +#: templates/InvenTree/settings/settings.html:225 msgid "Parameter Template" msgstr "Parameter Vorlage" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Data" msgstr "Wert" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Parameter Value" msgstr "Parameter Wert" -#: part/models.py:3221 templates/InvenTree/settings/settings.html:233 +#: part/models.py:3299 templates/InvenTree/settings/settings.html:234 msgid "Default Value" msgstr "Standard-Wert" -#: part/models.py:3222 +#: part/models.py:3300 msgid "Default Parameter Value" msgstr "Standard Parameter Wert" -#: part/models.py:3259 +#: part/models.py:3337 msgid "Part ID or part name" msgstr "Teilnummer oder Teilname" -#: part/models.py:3263 +#: part/models.py:3341 msgid "Unique part ID value" msgstr "Eindeutige Teil-ID" -#: part/models.py:3271 +#: part/models.py:3349 msgid "Part IPN value" msgstr "IPN-Wert des Teils" -#: part/models.py:3274 +#: part/models.py:3352 msgid "Level" msgstr "Stufe" -#: part/models.py:3275 +#: part/models.py:3353 msgid "BOM level" msgstr "Stücklistenebene" -#: part/models.py:3344 +#: part/models.py:3422 msgid "Select parent part" msgstr "Ausgangsteil auswählen" -#: part/models.py:3352 +#: part/models.py:3430 msgid "Sub part" msgstr "Untergeordnetes Teil" -#: part/models.py:3353 +#: part/models.py:3431 msgid "Select part to be used in BOM" msgstr "Teil für die Nutzung in der Stückliste auswählen" -#: part/models.py:3359 +#: part/models.py:3437 msgid "BOM quantity for this BOM item" msgstr "Stücklisten-Anzahl für dieses Stücklisten-Teil" -#: part/models.py:3363 part/templates/part/upload_bom.html:58 +#: part/models.py:3441 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:933 templates/js/translated/bom.js:986 #: templates/js/translated/build.js:1868 #: templates/js/translated/table_filters.js:84 @@ -5236,189 +5303,189 @@ msgstr "Stücklisten-Anzahl für dieses Stücklisten-Teil" msgid "Optional" msgstr "Optional" -#: part/models.py:3364 +#: part/models.py:3442 msgid "This BOM item is optional" msgstr "Diese Stücklisten-Position ist optional" -#: part/models.py:3369 templates/js/translated/bom.js:929 +#: part/models.py:3447 templates/js/translated/bom.js:929 #: templates/js/translated/bom.js:995 templates/js/translated/build.js:1859 #: templates/js/translated/table_filters.js:88 msgid "Consumable" msgstr "" -#: part/models.py:3370 +#: part/models.py:3448 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:3374 part/templates/part/upload_bom.html:55 +#: part/models.py:3452 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "Überschuss" -#: part/models.py:3375 +#: part/models.py:3453 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Geschätzter Ausschuss (absolut oder prozentual)" -#: part/models.py:3378 +#: part/models.py:3456 msgid "BOM item reference" msgstr "Referenz der Postion auf der Stückliste" -#: part/models.py:3381 +#: part/models.py:3459 msgid "BOM item notes" msgstr "Notizen zur Stücklisten-Position" -#: part/models.py:3383 +#: part/models.py:3461 msgid "Checksum" msgstr "Prüfsumme" -#: part/models.py:3383 +#: part/models.py:3461 msgid "BOM line checksum" msgstr "Prüfsumme der Stückliste" -#: part/models.py:3387 part/templates/part/upload_bom.html:57 +#: part/models.py:3465 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1012 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:108 msgid "Inherited" msgstr "Geerbt" -#: part/models.py:3388 +#: part/models.py:3466 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:3393 part/templates/part/upload_bom.html:56 +#: part/models.py:3471 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1004 msgid "Allow Variants" msgstr "Varianten zulassen" -#: part/models.py:3394 +#: part/models.py:3472 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:3480 stock/models.py:558 +#: part/models.py:3558 stock/models.py:558 msgid "Quantity must be integer value for trackable parts" msgstr "Menge muss eine Ganzzahl sein" -#: part/models.py:3489 part/models.py:3491 +#: part/models.py:3567 part/models.py:3569 msgid "Sub part must be specified" msgstr "Zuliefererteil muss festgelegt sein" -#: part/models.py:3618 +#: part/models.py:3696 msgid "BOM Item Substitute" msgstr "Stücklisten Ersatzteile" -#: part/models.py:3639 +#: part/models.py:3717 msgid "Substitute part cannot be the same as the master part" msgstr "Ersatzteil kann nicht identisch mit dem Hauptteil sein" -#: part/models.py:3652 +#: part/models.py:3730 msgid "Parent BOM item" msgstr "Übergeordnete Stücklisten Position" -#: part/models.py:3660 +#: part/models.py:3738 msgid "Substitute part" msgstr "Ersatzteil" -#: part/models.py:3675 +#: part/models.py:3753 msgid "Part 1" msgstr "Teil 1" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Part 2" msgstr "Teil 2" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Select Related Part" msgstr "verknüpftes Teil auswählen" -#: part/models.py:3697 +#: part/models.py:3775 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:3701 +#: part/models.py:3779 msgid "Duplicate relationship already exists" msgstr "Doppelte Beziehung existiert bereits" -#: part/serializers.py:155 part/serializers.py:183 stock/serializers.py:183 +#: part/serializers.py:157 part/serializers.py:185 stock/serializers.py:183 msgid "Purchase currency of this stock item" msgstr "Kaufwährung dieses Lagerartikels" -#: part/serializers.py:543 +#: part/serializers.py:584 msgid "Update" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:585 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:854 +#: part/serializers.py:895 msgid "Select part to copy BOM from" msgstr "Bauteil auswählen, von dem Stückliste kopiert wird" -#: part/serializers.py:862 +#: part/serializers.py:903 msgid "Remove Existing Data" msgstr "Bestehende Daten entfernen" -#: part/serializers.py:863 +#: part/serializers.py:904 msgid "Remove existing BOM items before copying" msgstr "Bestehende Stücklisten-Positionen vor dem Kopieren entfernen" -#: part/serializers.py:868 +#: part/serializers.py:909 msgid "Include Inherited" msgstr "Vererbtes einschließen" -#: part/serializers.py:869 +#: part/serializers.py:910 msgid "Include BOM items which are inherited from templated parts" msgstr "Stücklisten-Positionen einbeziehen, die von Vorlage-Teilen geerbt werden" -#: part/serializers.py:874 +#: part/serializers.py:915 msgid "Skip Invalid Rows" msgstr "Ungültige Zeilen überspringen" -#: part/serializers.py:875 +#: part/serializers.py:916 msgid "Enable this option to skip invalid rows" msgstr "Aktiviere diese Option, um ungültige Zeilen zu überspringen" -#: part/serializers.py:880 +#: part/serializers.py:921 msgid "Copy Substitute Parts" msgstr "Ersatzteile kopieren" -#: part/serializers.py:881 +#: part/serializers.py:922 msgid "Copy substitute parts when duplicate BOM items" msgstr "Ersatzteile beim Duplizieren von Stücklisten-Positionen kopieren" -#: part/serializers.py:921 +#: part/serializers.py:962 msgid "Clear Existing BOM" msgstr "Bestehende Stückliste löschen" -#: part/serializers.py:922 +#: part/serializers.py:963 msgid "Delete existing BOM items before uploading" msgstr "Bestehende Stücklisten-Positionen vor dem Importieren entfernen" -#: part/serializers.py:952 +#: part/serializers.py:993 msgid "No part column specified" msgstr "Keine Bauteilspalte angegeben" -#: part/serializers.py:995 +#: part/serializers.py:1036 msgid "Multiple matching parts found" msgstr "Mehrere übereinstimmende Teile gefunden" -#: part/serializers.py:998 +#: part/serializers.py:1039 msgid "No matching part found" msgstr "Keine passenden Teile gefunden" -#: part/serializers.py:1001 +#: part/serializers.py:1042 msgid "Part is not designated as a component" msgstr "Teil ist nicht als Komponente angelegt" -#: part/serializers.py:1010 +#: part/serializers.py:1051 msgid "Quantity not provided" msgstr "Menge nicht angegeben" -#: part/serializers.py:1018 +#: part/serializers.py:1059 msgid "Invalid quantity" msgstr "Ungültige Menge" -#: part/serializers.py:1039 +#: part/serializers.py:1080 msgid "At least one BOM item is required" msgstr "Mindestens eine Stückliste-Position ist erforderlich" @@ -5450,7 +5517,7 @@ msgstr "Die Stückliste für %(part)s wurde zuletzt von %(checker)s am msgid "The BOM for %(part)s has not been validated." msgstr "Die Stückliste für %(part)s wurde noch nicht kontrolliert." -#: part/templates/part/bom.html:30 part/templates/part/detail.html:267 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:290 msgid "BOM actions" msgstr "Stücklisten-Aktionen" @@ -5507,8 +5574,8 @@ msgstr "Neues Teil anlegen" msgid "New Part" msgstr "Neues Teil" -#: part/templates/part/category.html:169 part/templates/part/detail.html:366 -#: part/templates/part/detail.html:397 +#: part/templates/part/category.html:169 part/templates/part/detail.html:389 +#: part/templates/part/detail.html:420 msgid "Options" msgstr "Optionen" @@ -5556,7 +5623,7 @@ msgstr "Teil erfolgreich angelegt" msgid "Import Parts" msgstr "Teile importieren" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:404 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:407 msgid "Duplicate Part" msgstr "Teil duplizieren" @@ -5593,119 +5660,129 @@ msgstr "" msgid "Refresh" msgstr "Neu laden" -#: part/templates/part/detail.html:59 +#: part/templates/part/detail.html:65 +msgid "Add stocktake information" +msgstr "" + +#: part/templates/part/detail.html:66 part/templates/part/part_sidebar.html:49 +#: stock/admin.py:107 templates/js/translated/stock.js:1905 +msgid "Stocktake" +msgstr "Inventur" + +#: part/templates/part/detail.html:82 msgid "Part Test Templates" msgstr "Teil Test-Vorlagen" -#: part/templates/part/detail.html:64 +#: part/templates/part/detail.html:87 msgid "Add Test Template" msgstr "Test Vorlage hinzufügen" -#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:144 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "Verkaufsauftragszuweisungen" -#: part/templates/part/detail.html:141 +#: part/templates/part/detail.html:164 msgid "Part Notes" msgstr "Teile-Notizen" -#: part/templates/part/detail.html:156 +#: part/templates/part/detail.html:179 msgid "Part Variants" msgstr "Teil Varianten" -#: part/templates/part/detail.html:160 +#: part/templates/part/detail.html:183 msgid "Create new variant" msgstr "Neue Variante anlegen" -#: part/templates/part/detail.html:161 +#: part/templates/part/detail.html:184 msgid "New Variant" msgstr "neue Variante anlegen" -#: part/templates/part/detail.html:188 +#: part/templates/part/detail.html:211 msgid "Add new parameter" msgstr "Parameter hinzufügen" -#: part/templates/part/detail.html:225 part/templates/part/part_sidebar.html:52 +#: part/templates/part/detail.html:248 part/templates/part/part_sidebar.html:57 msgid "Related Parts" msgstr "Verknüpfte Teile" -#: part/templates/part/detail.html:229 part/templates/part/detail.html:230 +#: part/templates/part/detail.html:252 part/templates/part/detail.html:253 msgid "Add Related" msgstr "Verknüpftes Teil hinzufügen" -#: part/templates/part/detail.html:250 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:273 part/templates/part/part_sidebar.html:17 +#: report/templates/report/inventree_bill_of_materials_report.html:100 msgid "Bill of Materials" msgstr "Stückliste" -#: part/templates/part/detail.html:255 +#: part/templates/part/detail.html:278 msgid "Export actions" msgstr "Export-Aktionen" -#: part/templates/part/detail.html:259 templates/js/translated/bom.js:309 +#: part/templates/part/detail.html:282 templates/js/translated/bom.js:309 msgid "Export BOM" msgstr "Stückliste exportieren" -#: part/templates/part/detail.html:261 +#: part/templates/part/detail.html:284 msgid "Print BOM Report" msgstr "Stücklisten-Bericht drucken" -#: part/templates/part/detail.html:271 +#: part/templates/part/detail.html:294 msgid "Upload BOM" msgstr "Stückliste hochladen" -#: part/templates/part/detail.html:272 templates/js/translated/part.js:276 +#: part/templates/part/detail.html:295 templates/js/translated/part.js:279 msgid "Copy BOM" msgstr "Stückliste kopieren" -#: part/templates/part/detail.html:273 +#: part/templates/part/detail.html:296 msgid "Validate BOM" msgstr "Stückliste überprüfen" -#: part/templates/part/detail.html:278 part/templates/part/detail.html:279 +#: part/templates/part/detail.html:301 part/templates/part/detail.html:302 #: templates/js/translated/bom.js:1268 templates/js/translated/bom.js:1269 msgid "Add BOM Item" msgstr "Stücklisten-Position hinzufügen" -#: part/templates/part/detail.html:292 +#: part/templates/part/detail.html:315 msgid "Assemblies" msgstr "Baugruppen" -#: part/templates/part/detail.html:310 +#: part/templates/part/detail.html:333 msgid "Part Builds" msgstr "Gefertigte Teile" -#: part/templates/part/detail.html:337 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:360 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "Bauauftragszuweisungen" -#: part/templates/part/detail.html:353 +#: part/templates/part/detail.html:376 msgid "Part Suppliers" msgstr "Zulieferer" -#: part/templates/part/detail.html:383 +#: part/templates/part/detail.html:406 msgid "Part Manufacturers" msgstr "Teil-Hersteller" -#: part/templates/part/detail.html:399 +#: part/templates/part/detail.html:422 msgid "Delete manufacturer parts" msgstr "Herstellerteile löschen" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:696 msgid "Related Part" msgstr "verknüpftes Teil" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:704 msgid "Add Related Part" msgstr "verknüpftes Teil hinzufügen" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:796 msgid "Add Test Result Template" msgstr "Testergebnis-Vorlage hinzufügen" #: part/templates/part/import_wizard/ajax_part_upload.html:29 #: part/templates/part/import_wizard/part_upload.html:14 -msgid "Unsuffitient privileges." -msgstr "Unzureichende Benutzerrechte." +msgid "Insufficient privileges." +msgstr "" #: part/templates/part/import_wizard/part_upload.html:8 msgid "Return to Parts" @@ -5715,6 +5792,34 @@ msgstr "Zurück zu Teilen" msgid "Import Parts from File" msgstr "Teile aus Datei importieren" +#: part/templates/part/import_wizard/part_upload.html:31 +msgid "Requirements for part import" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "The part import file must contain the required named columns as provided in the " +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:89 +msgid "Download Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:92 +#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 +#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 +msgid "Format" +msgstr "Format" + +#: part/templates/part/import_wizard/part_upload.html:93 +#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 +#: templates/js/translated/order.js:999 +msgid "Select file format" +msgstr "Dateiformat auswählen" + #: part/templates/part/part_app_base.html:12 msgid "Part List" msgstr "Teileliste" @@ -5804,12 +5909,12 @@ msgstr "Teil ist virtuell (kein physisches Teil)" #: templates/js/translated/company.js:660 #: templates/js/translated/company.js:921 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:677 templates/js/translated/part.js:755 +#: templates/js/translated/part.js:680 templates/js/translated/part.js:1026 msgid "Inactive" msgstr "Inaktiv" #: part/templates/part/part_base.html:165 -#: part/templates/part/part_base.html:666 +#: part/templates/part/part_base.html:680 msgid "Show Part Details" msgstr "Teildetails anzeigen" @@ -5837,38 +5942,38 @@ msgid "Minimum stock level" msgstr "Minimaler Bestand" #: part/templates/part/part_base.html:330 templates/js/translated/bom.js:1032 -#: templates/js/translated/part.js:798 templates/js/translated/part.js:1604 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:1875 #: templates/js/translated/pricing.js:124 #: templates/js/translated/pricing.js:762 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:345 +#: part/templates/part/part_base.html:359 msgid "Latest Serial Number" msgstr "letzte Seriennummer" -#: part/templates/part/part_base.html:349 +#: part/templates/part/part_base.html:363 #: stock/templates/stock/item_base.html:331 msgid "Search for serial number" msgstr "Nach Seriennummer suchen" -#: part/templates/part/part_base.html:449 +#: part/templates/part/part_base.html:463 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:495 +#: part/templates/part/part_base.html:509 msgid "Calculate" msgstr "Berechnen" -#: part/templates/part/part_base.html:512 +#: part/templates/part/part_base.html:526 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:564 +#: part/templates/part/part_base.html:578 msgid "No matching images found" msgstr "Keine passenden Bilder gefunden" -#: part/templates/part/part_base.html:660 +#: part/templates/part/part_base.html:674 msgid "Hide Part Details" msgstr "Teildetails ausblenden" @@ -5920,15 +6025,6 @@ msgstr "Interner Preis" msgid "No pricing information is available for this part." msgstr "Keine Preise für dieses Teil verfügbar" -#: part/templates/part/part_scheduling.html:13 -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:63 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:2043 templates/js/translated/pricing.js:537 -#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2516 -msgid "Date" -msgstr "Datum" - #: part/templates/part/part_scheduling.html:14 msgid "Scheduled Quantity" msgstr "" @@ -5941,7 +6037,7 @@ msgstr "Varianten" msgid "Scheduling" msgstr "Zeitplan" -#: part/templates/part/part_sidebar.html:48 +#: part/templates/part/part_sidebar.html:53 msgid "Test Templates" msgstr "Testvorlagen" @@ -5960,7 +6056,7 @@ msgstr "" #: part/templates/part/prices.html:25 stock/admin.py:106 #: stock/templates/stock/item_base.html:440 #: templates/js/translated/company.js:1039 -#: templates/js/translated/stock.js:1940 +#: templates/js/translated/stock.js:1935 msgid "Last Updated" msgstr "Zuletzt aktualisiert" @@ -6023,8 +6119,8 @@ msgstr "" msgid "Add Sell Price Break" msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:639 -#: templates/js/translated/part.js:1373 templates/js/translated/part.js:1375 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:1644 templates/js/translated/part.js:1646 msgid "No Stock" msgstr "Kein Bestand" @@ -6087,27 +6183,32 @@ msgstr "Unbekannte Datenbank" msgid "{title} v{version}" msgstr "{title} v{version}" -#: part/views.py:109 +#: part/views.py:111 msgid "Match References" msgstr "Referenzen zuteilen" -#: part/views.py:354 +#: part/views.py:239 +#, python-brace-format +msgid "Can't import part {name} because there is no category assigned" +msgstr "" + +#: part/views.py:378 msgid "Part QR Code" msgstr "Teil-QR-Code" -#: part/views.py:372 +#: part/views.py:396 msgid "Select Part Image" msgstr "Teilbild auswählen" -#: part/views.py:398 +#: part/views.py:422 msgid "Updated part image" msgstr "Teilbild aktualisiert" -#: part/views.py:401 +#: part/views.py:425 msgid "Part image not found" msgstr "Teilbild nicht gefunden" -#: part/views.py:493 +#: part/views.py:517 msgid "Part Pricing" msgstr "Teilbepreisung" @@ -6156,28 +6257,48 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:29 -#: plugin/builtin/integration/core_notifications.py:31 +#: plugin/builtin/integration/core_notifications.py:33 msgid "InvenTree contributors" msgstr "InvenTree Mitwirkende" -#: plugin/builtin/integration/core_notifications.py:30 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:32 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notificaton methods" msgstr "Integrierte ausgehende Benachrichtigungsmethoden" -#: plugin/builtin/integration/core_notifications.py:37 -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:80 msgid "Enable email notifications" msgstr "E-Mail-Benachrichtigungen aktivieren" -#: plugin/builtin/integration/core_notifications.py:38 -#: plugin/builtin/integration/core_notifications.py:57 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:81 msgid "Allow sending of emails for event notifications" msgstr "Das Senden von Benachrichtigungen als E-Mails erlauben" +#: plugin/builtin/integration/core_notifications.py:45 +msgid "Enable slack notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:46 +msgid "Allow sending of slack channel messages for event notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:51 +msgid "Slack incoming webhook url" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:52 +msgid "URL that is used to send messages to a slack channel" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:162 +msgid "Open link" +msgstr "" + #: plugin/models.py:33 msgid "Plugin Metadata" msgstr "Plugin Metadaten" @@ -6409,6 +6530,10 @@ msgstr "Berichts-Ressource" msgid "Asset file description" msgstr "Ressource-Beschreibung" +#: report/templates/report/inventree_bill_of_materials_report.html:133 +msgid "Materials needed" +msgstr "" + #: report/templates/report/inventree_build_order_base.html:146 msgid "Required For" msgstr "benötigt für" @@ -6427,7 +6552,7 @@ msgstr "Lagerartikel Test-Bericht" #: templates/js/translated/build.js:1244 templates/js/translated/build.js:1745 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:121 templates/js/translated/order.js:3611 -#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:522 +#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:521 msgid "Serial Number" msgstr "Seriennummer" @@ -6459,8 +6584,9 @@ msgid "Installed Items" msgstr "Verbaute Objekte" #: report/templates/report/inventree_test_report_base.html:137 -#: stock/admin.py:87 templates/js/translated/stock.js:642 -#: templates/js/translated/stock.js:812 templates/js/translated/stock.js:2765 +#: stock/admin.py:87 templates/js/translated/part.js:749 +#: templates/js/translated/stock.js:641 templates/js/translated/stock.js:811 +#: templates/js/translated/stock.js:2760 msgid "Serial" msgstr "Seriennummer" @@ -6515,13 +6641,9 @@ msgstr "" msgid "Purchase Order ID" msgstr "" -#: stock/admin.py:107 templates/js/translated/stock.js:1910 -msgid "Stocktake" -msgstr "Inventur" - #: stock/admin.py:108 stock/models.py:764 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/stock.js:1924 +#: templates/js/translated/stock.js:1919 msgid "Expiry Date" msgstr "Ablaufdatum" @@ -6936,7 +7058,7 @@ msgstr "Testdaten hinzufügen" msgid "Installed Stock Items" msgstr "Installierte Lagerartikel" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2912 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2907 msgid "Install Stock Item" msgstr "Lagerartikel installieren" @@ -6944,7 +7066,7 @@ msgstr "Lagerartikel installieren" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1561 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1560 msgid "Add Test Result" msgstr "Testergebnis hinzufügen" @@ -7117,10 +7239,6 @@ msgstr "Dieser Lagerartikel läuft am %(item.expiry_date)s ab" msgid "Stale" msgstr "überfällig" -#: stock/templates/stock/item_base.html:445 -msgid "Last Stocktake" -msgstr "Letzte Inventur" - #: stock/templates/stock/item_base.html:449 msgid "No stocktake performed" msgstr "Keine Inventur ausgeführt" @@ -7394,7 +7512,8 @@ msgstr "Alle als gelesen markieren" #: templates/InvenTree/notifications/notifications.html:10 #: templates/InvenTree/notifications/sidebar.html:5 -#: templates/InvenTree/settings/sidebar.html:17 templates/notifications.html:5 +#: templates/InvenTree/settings/sidebar.html:17 +#: templates/InvenTree/settings/sidebar.html:35 templates/notifications.html:5 msgid "Notifications" msgstr "Benachrichtigungen" @@ -7475,6 +7594,14 @@ msgstr "Die Basis-URL für dieses Plugin ist %(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:22 templates/js/translated/forms.js:646 +#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:649 msgid "Confirm" msgstr "Bestätigen" @@ -8313,7 +8440,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:19 -#: templates/js/translated/part.js:2445 +#: templates/js/translated/part.js:2726 msgid "Minimum Quantity" msgstr "Mindestmenge" @@ -8466,7 +8593,7 @@ msgstr "" msgid "Unlink" msgstr "Entfernen" -#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1089 +#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1088 msgid "Remove stock item" msgstr "Lagerartikel entfernen" @@ -8548,16 +8675,6 @@ msgstr "Schliessen" msgid "Download BOM Template" msgstr "Vorlage einer Stückliste herunterladen" -#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 -#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 -msgid "Format" -msgstr "Format" - -#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 -#: templates/js/translated/order.js:999 -msgid "Select file format" -msgstr "Dateiformat auswählen" - #: templates/js/translated/bom.js:320 msgid "Multi Level BOM" msgstr "Multilevel Stückliste" @@ -8688,7 +8805,7 @@ msgid "Includes variant and substitute stock" msgstr "Beinhaltet Variante und Ersatzbestand" #: templates/js/translated/bom.js:1145 templates/js/translated/build.js:1923 -#: templates/js/translated/part.js:790 templates/js/translated/part.js:1572 +#: templates/js/translated/part.js:1061 templates/js/translated/part.js:1843 msgid "Includes variant stock" msgstr "Beinhaltet Variantenbestand" @@ -8773,13 +8890,13 @@ msgstr "Bauauftrag ist unvollständig" msgid "Complete Build Order" msgstr "Bauauftrag fertigstellen" -#: templates/js/translated/build.js:317 templates/js/translated/stock.js:95 -#: templates/js/translated/stock.js:237 +#: templates/js/translated/build.js:317 templates/js/translated/stock.js:94 +#: templates/js/translated/stock.js:236 msgid "Next available serial number" msgstr "Nächste verfügbare Seriennummer" -#: templates/js/translated/build.js:319 templates/js/translated/stock.js:97 -#: templates/js/translated/stock.js:239 +#: templates/js/translated/build.js:319 templates/js/translated/stock.js:96 +#: templates/js/translated/stock.js:238 msgid "Latest serial number" msgstr "Letzte Seriennummer" @@ -8987,9 +9104,9 @@ msgstr "Lagerartikel zuordnen" msgid "No builds matching query" msgstr "Keine Bauaufträge passen zur Anfrage" -#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1466 -#: templates/js/translated/part.js:2003 templates/js/translated/stock.js:1725 -#: templates/js/translated/stock.js:2428 +#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1737 +#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1724 +#: templates/js/translated/stock.js:2423 msgid "Select" msgstr "Auswählen" @@ -9001,7 +9118,7 @@ msgstr "Bauauftrag ist überfällig" msgid "Progress" msgstr "Fortschritt" -#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2695 +#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2690 msgid "No user information" msgstr "Keine Benutzerinformation" @@ -9074,34 +9191,34 @@ msgid "No manufacturer parts found" msgstr "Keine Herstellerteile gefunden" #: templates/js/translated/company.js:652 -#: templates/js/translated/company.js:913 templates/js/translated/part.js:661 -#: templates/js/translated/part.js:747 +#: templates/js/translated/company.js:913 templates/js/translated/part.js:664 +#: templates/js/translated/part.js:1018 msgid "Template part" msgstr "Vorlagenteil" #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:917 templates/js/translated/part.js:665 -#: templates/js/translated/part.js:751 +#: templates/js/translated/company.js:917 templates/js/translated/part.js:668 +#: templates/js/translated/part.js:1022 msgid "Assembled part" msgstr "Baugruppe" -#: templates/js/translated/company.js:784 templates/js/translated/part.js:870 +#: templates/js/translated/company.js:784 templates/js/translated/part.js:1141 msgid "No parameters found" msgstr "Keine Parameter gefunden" -#: templates/js/translated/company.js:821 templates/js/translated/part.js:912 +#: templates/js/translated/company.js:821 templates/js/translated/part.js:1183 msgid "Edit parameter" msgstr "Parameter bearbeiten" -#: templates/js/translated/company.js:822 templates/js/translated/part.js:913 +#: templates/js/translated/company.js:822 templates/js/translated/part.js:1184 msgid "Delete parameter" msgstr "Parameter löschen" -#: templates/js/translated/company.js:841 templates/js/translated/part.js:930 +#: templates/js/translated/company.js:841 templates/js/translated/part.js:1201 msgid "Edit Parameter" msgstr "Parameter bearbeiten" -#: templates/js/translated/company.js:852 templates/js/translated/part.js:942 +#: templates/js/translated/company.js:852 templates/js/translated/part.js:1213 msgid "Delete Parameter" msgstr "Parameter löschen" @@ -9181,61 +9298,61 @@ msgstr "Filter entfernen" msgid "Create filter" msgstr "Filter anlegen" -#: templates/js/translated/forms.js:369 templates/js/translated/forms.js:384 -#: templates/js/translated/forms.js:398 templates/js/translated/forms.js:412 +#: templates/js/translated/forms.js:372 templates/js/translated/forms.js:387 +#: templates/js/translated/forms.js:401 templates/js/translated/forms.js:415 msgid "Action Prohibited" msgstr "Aktion verboten" -#: templates/js/translated/forms.js:371 +#: templates/js/translated/forms.js:374 msgid "Create operation not allowed" msgstr "Erstellvorgang nicht erlaubt" -#: templates/js/translated/forms.js:386 +#: templates/js/translated/forms.js:389 msgid "Update operation not allowed" msgstr "Updatevorgang nicht erlaubt" -#: templates/js/translated/forms.js:400 +#: templates/js/translated/forms.js:403 msgid "Delete operation not allowed" msgstr "Löschvorgang nicht erlaubt" -#: templates/js/translated/forms.js:414 +#: templates/js/translated/forms.js:417 msgid "View operation not allowed" msgstr "Anzeigevorgang nicht erlaubt" -#: templates/js/translated/forms.js:672 +#: templates/js/translated/forms.js:675 msgid "Keep this form open" msgstr "Dieses Formular offen lassen" -#: templates/js/translated/forms.js:773 +#: templates/js/translated/forms.js:776 msgid "Enter a valid number" msgstr "Gib eine gültige Nummer ein" -#: templates/js/translated/forms.js:1266 templates/modals.html:19 +#: templates/js/translated/forms.js:1269 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "Fehler in Formular" -#: templates/js/translated/forms.js:1703 +#: templates/js/translated/forms.js:1706 msgid "No results found" msgstr "Keine Ergebnisse gefunden" -#: templates/js/translated/forms.js:1919 templates/search.html:29 +#: templates/js/translated/forms.js:1922 templates/search.html:29 msgid "Searching" msgstr "Suche" -#: templates/js/translated/forms.js:2172 +#: templates/js/translated/forms.js:2175 msgid "Clear input" msgstr "Eingabe leeren" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "File Column" msgstr "Dateispalte" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "Field Name" msgstr "Feldname" -#: templates/js/translated/forms.js:2640 +#: templates/js/translated/forms.js:2643 msgid "Select Columns" msgstr "Spalten auswählen" @@ -9256,7 +9373,7 @@ msgid "Labels sent to printer" msgstr "Label an den Drucker gesendet" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1113 +#: templates/js/translated/stock.js:1112 msgid "Select Stock Items" msgstr "Lagerartikel auswählen" @@ -9590,7 +9707,7 @@ msgstr "" msgid "Quantity to receive" msgstr "Zu erhaltende Menge" -#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2184 +#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2179 msgid "Stock Status" msgstr "Status" @@ -9614,7 +9731,7 @@ msgstr "Empfang der Teile bestätigen" msgid "Receive Purchase Order Items" msgstr "Bestellpositionen erhalten" -#: templates/js/translated/order.js:1982 templates/js/translated/part.js:983 +#: templates/js/translated/order.js:1982 templates/js/translated/part.js:1254 msgid "No purchase orders found" msgstr "Keine Bestellungen gefunden" @@ -9647,8 +9764,8 @@ msgstr "Keine Positionen gefunden" msgid "Total" msgstr "Summe" -#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1085 -#: templates/js/translated/part.js:1137 +#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1356 +#: templates/js/translated/part.js:1408 msgid "Total Quantity" msgstr "" @@ -9666,11 +9783,11 @@ msgid "Total Price" msgstr "Gesamtpreis" #: templates/js/translated/order.js:2388 templates/js/translated/order.js:3900 -#: templates/js/translated/part.js:1121 +#: templates/js/translated/part.js:1392 msgid "This line item is overdue" msgstr "Diese Position ist überfällig" -#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1166 +#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1437 msgid "Receive line item" msgstr "Position empfangen" @@ -9791,7 +9908,7 @@ msgid "Delete Stock Allocation" msgstr "Bestands-Zuordnung löschen" #: templates/js/translated/order.js:3623 templates/js/translated/order.js:3712 -#: templates/js/translated/stock.js:1641 +#: templates/js/translated/stock.js:1640 msgid "Shipped to customer" msgstr "an Kunde versand" @@ -9835,334 +9952,358 @@ msgstr "Keine passenden Positionen gefunden" msgid "No matching lines" msgstr "Keine passenden Positionen gefunden" -#: templates/js/translated/part.js:52 +#: templates/js/translated/part.js:55 msgid "Part Attributes" msgstr "Teileigenschaften" -#: templates/js/translated/part.js:56 +#: templates/js/translated/part.js:59 msgid "Part Creation Options" msgstr "Erstellungsoptionen für Teile" -#: templates/js/translated/part.js:60 +#: templates/js/translated/part.js:63 msgid "Part Duplication Options" msgstr "Einstellungen für Teilkopien" -#: templates/js/translated/part.js:64 +#: templates/js/translated/part.js:67 msgid "Supplier Options" msgstr "Zuliefereroptionen" -#: templates/js/translated/part.js:78 +#: templates/js/translated/part.js:81 msgid "Add Part Category" msgstr "Teil-Kategorie hinzufügen" -#: templates/js/translated/part.js:168 +#: templates/js/translated/part.js:171 msgid "Create Initial Stock" msgstr "Anfänglichen Bestand erstellen" -#: templates/js/translated/part.js:169 +#: templates/js/translated/part.js:172 msgid "Create an initial stock item for this part" msgstr "Anfänglichen Bestand für dieses Teil erstellen" -#: templates/js/translated/part.js:176 +#: templates/js/translated/part.js:179 msgid "Initial Stock Quantity" msgstr "Start-Bestandsmenge" -#: templates/js/translated/part.js:177 +#: templates/js/translated/part.js:180 msgid "Specify initial stock quantity for this part" msgstr "Menge des anfänglichen Bestands für dieses Teil angeben" -#: templates/js/translated/part.js:184 +#: templates/js/translated/part.js:187 msgid "Select destination stock location" msgstr "Zielstandort auswählen" -#: templates/js/translated/part.js:202 +#: templates/js/translated/part.js:205 msgid "Copy Category Parameters" msgstr "Kategorieparameter kopieren" -#: templates/js/translated/part.js:203 +#: templates/js/translated/part.js:206 msgid "Copy parameter templates from selected part category" msgstr "Parametervorlagen aus der ausgewählten Bauteilkategorie kopieren" -#: templates/js/translated/part.js:211 +#: templates/js/translated/part.js:214 msgid "Add Supplier Data" msgstr "Zuliefererdaten hinzufügen" -#: templates/js/translated/part.js:212 +#: templates/js/translated/part.js:215 msgid "Create initial supplier data for this part" msgstr "Erstelle ersten Lieferanten für dieses Teil" -#: templates/js/translated/part.js:268 +#: templates/js/translated/part.js:271 msgid "Copy Image" msgstr "Bild kopieren" -#: templates/js/translated/part.js:269 +#: templates/js/translated/part.js:272 msgid "Copy image from original part" msgstr "Bild vom Originalteil kopieren" -#: templates/js/translated/part.js:277 +#: templates/js/translated/part.js:280 msgid "Copy bill of materials from original part" msgstr "Stückliste vom Originalteil kopieren" -#: templates/js/translated/part.js:284 +#: templates/js/translated/part.js:287 msgid "Copy Parameters" msgstr "Parameter kopieren" -#: templates/js/translated/part.js:285 +#: templates/js/translated/part.js:288 msgid "Copy parameter data from original part" msgstr "Parameterdaten vom Originalteil kopieren" -#: templates/js/translated/part.js:298 +#: templates/js/translated/part.js:301 msgid "Parent part category" msgstr "Übergeordnete Teilkategorie" -#: templates/js/translated/part.js:313 templates/js/translated/stock.js:122 +#: templates/js/translated/part.js:316 templates/js/translated/stock.js:121 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:329 +#: templates/js/translated/part.js:332 msgid "Edit Part Category" msgstr "Teil-Kategorie bearbeiten" -#: templates/js/translated/part.js:342 +#: templates/js/translated/part.js:345 msgid "Are you sure you want to delete this part category?" msgstr "Möchten Sie diese Kategorie wirklich löschen?" -#: templates/js/translated/part.js:347 +#: templates/js/translated/part.js:350 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:359 msgid "Delete Part Category" msgstr "Teil-Kategorie löschen" -#: templates/js/translated/part.js:360 +#: templates/js/translated/part.js:363 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:368 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:394 +#: templates/js/translated/part.js:397 msgid "Edit Part" msgstr "Teil bearbeiten" -#: templates/js/translated/part.js:396 +#: templates/js/translated/part.js:399 msgid "Part edited" msgstr "Teil bearbeitet" -#: templates/js/translated/part.js:407 +#: templates/js/translated/part.js:410 msgid "Create Part Variant" msgstr "Teil-Variante anlegen" -#: templates/js/translated/part.js:459 +#: templates/js/translated/part.js:462 msgid "Active Part" msgstr "Aktives Teil" -#: templates/js/translated/part.js:460 +#: templates/js/translated/part.js:463 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:474 +#: templates/js/translated/part.js:477 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:476 +#: templates/js/translated/part.js:479 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:477 +#: templates/js/translated/part.js:480 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:478 +#: templates/js/translated/part.js:481 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:485 +#: templates/js/translated/part.js:488 msgid "Delete Part" msgstr "Teil löschen" -#: templates/js/translated/part.js:521 +#: templates/js/translated/part.js:524 msgid "You are subscribed to notifications for this item" msgstr "Sie haben Benachrichtigungen für dieses Teil abonniert" -#: templates/js/translated/part.js:523 +#: templates/js/translated/part.js:526 msgid "You have subscribed to notifications for this item" msgstr "Sie haben Benachrichtigungen für dieses Teil abonniert" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:531 msgid "Subscribe to notifications for this item" msgstr "Benachrichtigungen für dieses Teil abonnieren" -#: templates/js/translated/part.js:530 +#: templates/js/translated/part.js:533 msgid "You have unsubscribed to notifications for this item" msgstr "Sie haben Benachrichtigungen für dieses Teil abgemeldet" -#: templates/js/translated/part.js:547 +#: templates/js/translated/part.js:550 msgid "Validating the BOM will mark each line item as valid" msgstr "Die Stückliste zu validieren markiert jede Zeile als gültig" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:560 msgid "Validate Bill of Materials" msgstr "Stückliste prüfen" -#: templates/js/translated/part.js:560 +#: templates/js/translated/part.js:563 msgid "Validated Bill of Materials" msgstr "überprüfte Stückliste" -#: templates/js/translated/part.js:585 +#: templates/js/translated/part.js:588 msgid "Copy Bill of Materials" msgstr "Stückliste kopieren" -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1554 +#: templates/js/translated/part.js:612 templates/js/translated/part.js:1825 #: templates/js/translated/table_filters.js:488 msgid "Low stock" msgstr "Bestand niedrig" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:622 msgid "No stock available" msgstr "Kein Lagerbestand verfügbar" -#: templates/js/translated/part.js:653 templates/js/translated/part.js:739 +#: templates/js/translated/part.js:656 templates/js/translated/part.js:1010 msgid "Trackable part" msgstr "Nachverfolgbares Teil" -#: templates/js/translated/part.js:657 templates/js/translated/part.js:743 +#: templates/js/translated/part.js:660 templates/js/translated/part.js:1014 msgid "Virtual part" msgstr "virtuelles Teil" -#: templates/js/translated/part.js:669 +#: templates/js/translated/part.js:672 msgid "Subscribed part" msgstr "Abonnierter Teil" -#: templates/js/translated/part.js:673 +#: templates/js/translated/part.js:676 msgid "Salable part" msgstr "Verkäufliches Teil" -#: templates/js/translated/part.js:815 +#: templates/js/translated/part.js:761 +msgid "Stock item has not been checked recently" +msgstr "" + +#: templates/js/translated/part.js:769 +msgid "Update item" +msgstr "" + +#: templates/js/translated/part.js:770 +msgid "Delete item" +msgstr "" + +#: templates/js/translated/part.js:871 +msgid "No stocktake information available" +msgstr "" + +#: templates/js/translated/part.js:910 templates/js/translated/part.js:933 +msgid "Edit Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:914 templates/js/translated/part.js:945 +msgid "Delete Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:1086 msgid "No variants found" msgstr "Keine Varianten gefunden" -#: templates/js/translated/part.js:1236 +#: templates/js/translated/part.js:1507 msgid "Delete part relationship" msgstr "Teile-Beziehung löschen" -#: templates/js/translated/part.js:1260 +#: templates/js/translated/part.js:1531 msgid "Delete Part Relationship" msgstr "Teile-Beziehung löschen" -#: templates/js/translated/part.js:1327 templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1598 templates/js/translated/part.js:1936 msgid "No parts found" msgstr "Keine Teile gefunden" -#: templates/js/translated/part.js:1521 +#: templates/js/translated/part.js:1792 msgid "No category" msgstr "Keine Kategorie" -#: templates/js/translated/part.js:1552 +#: templates/js/translated/part.js:1823 msgid "No stock" msgstr "" -#: templates/js/translated/part.js:1576 +#: templates/js/translated/part.js:1847 msgid "Allocated to build orders" msgstr "" -#: templates/js/translated/part.js:1580 +#: templates/js/translated/part.js:1851 msgid "Allocated to sales orders" msgstr "" -#: templates/js/translated/part.js:1679 templates/js/translated/part.js:1922 -#: templates/js/translated/stock.js:2387 +#: templates/js/translated/part.js:1960 templates/js/translated/part.js:2203 +#: templates/js/translated/stock.js:2382 msgid "Display as list" msgstr "Listenansicht" -#: templates/js/translated/part.js:1695 +#: templates/js/translated/part.js:1976 msgid "Display as grid" msgstr "Rasteransicht" -#: templates/js/translated/part.js:1761 +#: templates/js/translated/part.js:2042 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1766 +#: templates/js/translated/part.js:2047 msgid "Set Part Category" msgstr "Teil-Kategorie auswählen" -#: templates/js/translated/part.js:1771 +#: templates/js/translated/part.js:2052 msgid "Select Part Category" msgstr "Teil-Kategorie wählen" -#: templates/js/translated/part.js:1784 +#: templates/js/translated/part.js:2065 msgid "Category is required" msgstr "Kategorie erforderlich" -#: templates/js/translated/part.js:1942 templates/js/translated/stock.js:2407 +#: templates/js/translated/part.js:2223 templates/js/translated/stock.js:2402 msgid "Display as tree" msgstr "Baumansicht" -#: templates/js/translated/part.js:2022 +#: templates/js/translated/part.js:2303 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2038 +#: templates/js/translated/part.js:2319 msgid "Subscribed category" msgstr "Abonnierte Kategorie" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2383 msgid "No test templates matching query" msgstr "Keine zur Anfrage passenden Testvorlagen" -#: templates/js/translated/part.js:2153 templates/js/translated/stock.js:1338 +#: templates/js/translated/part.js:2434 templates/js/translated/stock.js:1337 msgid "Edit test result" msgstr "Testergebnis bearbeiten" -#: templates/js/translated/part.js:2154 templates/js/translated/stock.js:1339 -#: templates/js/translated/stock.js:1599 +#: templates/js/translated/part.js:2435 templates/js/translated/stock.js:1338 +#: templates/js/translated/stock.js:1598 msgid "Delete test result" msgstr "Testergebnis löschen" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2441 msgid "This test is defined for a parent part" msgstr "Dieses Testergebnis ist für ein Hauptteil" -#: templates/js/translated/part.js:2182 +#: templates/js/translated/part.js:2463 msgid "Edit Test Result Template" msgstr "Testergebnis-Vorlage bearbeiten" -#: templates/js/translated/part.js:2196 +#: templates/js/translated/part.js:2477 msgid "Delete Test Result Template" msgstr "Testergebnis-Vorlage löschen" -#: templates/js/translated/part.js:2277 templates/js/translated/part.js:2278 +#: templates/js/translated/part.js:2558 templates/js/translated/part.js:2559 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2280 +#: templates/js/translated/part.js:2561 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:2286 +#: templates/js/translated/part.js:2567 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:2336 +#: templates/js/translated/part.js:2617 msgid "No scheduling information available for this part" msgstr "Keine Zeitplanung für dieses Teil vorhanden" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2623 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:2438 +#: templates/js/translated/part.js:2719 msgid "Scheduled Stock Quantities" msgstr "Geplante Lagermengen" -#: templates/js/translated/part.js:2454 +#: templates/js/translated/part.js:2735 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:2499 +#: templates/js/translated/part.js:2780 msgid "Minimum Stock Level" msgstr "" @@ -10290,388 +10431,388 @@ msgstr "Ergebnisse minimieren" msgid "Remove results" msgstr "Ergebnisse entfernen" -#: templates/js/translated/stock.js:74 +#: templates/js/translated/stock.js:73 msgid "Serialize Stock Item" msgstr "Lagerartikel serialisieren" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:104 msgid "Confirm Stock Serialization" msgstr "Lager-Serialisierung bestätigen" -#: templates/js/translated/stock.js:114 +#: templates/js/translated/stock.js:113 msgid "Parent stock location" msgstr "Übergeordneter Lagerort" -#: templates/js/translated/stock.js:148 +#: templates/js/translated/stock.js:147 msgid "Edit Stock Location" msgstr "Lagerartikel-Ort bearbeiten" -#: templates/js/translated/stock.js:163 +#: templates/js/translated/stock.js:162 msgid "New Stock Location" msgstr "Neuer Lagerstandort" -#: templates/js/translated/stock.js:177 +#: templates/js/translated/stock.js:176 msgid "Are you sure you want to delete this stock location?" msgstr "Sind Sie sicher, dass Sie diesen Lagerort löschen wollen?" -#: templates/js/translated/stock.js:184 +#: templates/js/translated/stock.js:183 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:193 +#: templates/js/translated/stock.js:192 msgid "Delete Stock Location" msgstr "Bestand-Lagerort löschen" -#: templates/js/translated/stock.js:197 +#: templates/js/translated/stock.js:196 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:201 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:256 +#: templates/js/translated/stock.js:255 msgid "This part cannot be serialized" msgstr "Dieser Teil kann nicht serialisiert werden" -#: templates/js/translated/stock.js:298 +#: templates/js/translated/stock.js:297 msgid "Enter initial quantity for this stock item" msgstr "Ausgangsmenge für diesen Lagerartikel eingeben" -#: templates/js/translated/stock.js:304 +#: templates/js/translated/stock.js:303 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:369 +#: templates/js/translated/stock.js:368 msgid "Stock item duplicated" msgstr "Lagerartikel dupliziert" -#: templates/js/translated/stock.js:389 +#: templates/js/translated/stock.js:388 msgid "Duplicate Stock Item" msgstr "Bestand duplizieren" -#: templates/js/translated/stock.js:405 +#: templates/js/translated/stock.js:404 msgid "Are you sure you want to delete this stock item?" msgstr "Sind Sie sicher, dass Sie diesen Lagerartikel löschen wollen?" -#: templates/js/translated/stock.js:410 +#: templates/js/translated/stock.js:409 msgid "Delete Stock Item" msgstr "Lagerartikel löschen" -#: templates/js/translated/stock.js:431 +#: templates/js/translated/stock.js:430 msgid "Edit Stock Item" msgstr "Lagerartikel bearbeiten" -#: templates/js/translated/stock.js:481 +#: templates/js/translated/stock.js:480 msgid "Created new stock item" msgstr "Neuer Lagerartikel erstellt" -#: templates/js/translated/stock.js:494 +#: templates/js/translated/stock.js:493 msgid "Created multiple stock items" msgstr "Mehrere Lagerartikel erstellt" -#: templates/js/translated/stock.js:519 +#: templates/js/translated/stock.js:518 msgid "Find Serial Number" msgstr "Seriennummer finden" -#: templates/js/translated/stock.js:523 templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:522 templates/js/translated/stock.js:523 msgid "Enter serial number" msgstr "Seriennummer eingeben" -#: templates/js/translated/stock.js:540 +#: templates/js/translated/stock.js:539 msgid "Enter a serial number" msgstr "Eine Seriennummer eingeben" -#: templates/js/translated/stock.js:560 +#: templates/js/translated/stock.js:559 msgid "No matching serial number" msgstr "Keine passende Seriennummer" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:568 msgid "More than one matching result found" msgstr "Mehrere Ergebnisse gefunden" -#: templates/js/translated/stock.js:692 +#: templates/js/translated/stock.js:691 msgid "Confirm stock assignment" msgstr "Bestand Zuweisung bestätigen" -#: templates/js/translated/stock.js:693 +#: templates/js/translated/stock.js:692 msgid "Assign Stock to Customer" msgstr "Einem Kunden zuordnen" -#: templates/js/translated/stock.js:770 +#: templates/js/translated/stock.js:769 msgid "Warning: Merge operation cannot be reversed" msgstr "Achtung: Das Zusammenführen kann nicht rückgängig gemacht werden" -#: templates/js/translated/stock.js:771 +#: templates/js/translated/stock.js:770 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:773 +#: templates/js/translated/stock.js:772 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:774 +#: templates/js/translated/stock.js:773 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:863 +#: templates/js/translated/stock.js:862 msgid "Confirm stock item merge" msgstr "Zusammenführung der Artikel bestätigen" -#: templates/js/translated/stock.js:864 +#: templates/js/translated/stock.js:863 msgid "Merge Stock Items" msgstr "Artikel zusammenführen" -#: templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:958 msgid "Transfer Stock" msgstr "Bestand verschieben" -#: templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:959 msgid "Move" msgstr "Verschieben" -#: templates/js/translated/stock.js:966 +#: templates/js/translated/stock.js:965 msgid "Count Stock" msgstr "Bestand zählen" -#: templates/js/translated/stock.js:967 +#: templates/js/translated/stock.js:966 msgid "Count" msgstr "Anzahl" -#: templates/js/translated/stock.js:971 +#: templates/js/translated/stock.js:970 msgid "Remove Stock" msgstr "Bestand entfernen" -#: templates/js/translated/stock.js:972 +#: templates/js/translated/stock.js:971 msgid "Take" msgstr "Entfernen" -#: templates/js/translated/stock.js:976 +#: templates/js/translated/stock.js:975 msgid "Add Stock" msgstr "Bestand hinzufügen" -#: templates/js/translated/stock.js:977 users/models.py:220 +#: templates/js/translated/stock.js:976 users/models.py:221 msgid "Add" msgstr "Hinzufügen" -#: templates/js/translated/stock.js:981 +#: templates/js/translated/stock.js:980 msgid "Delete Stock" msgstr "Bestand löschen" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Quantity cannot be adjusted for serialized stock" msgstr "Menge von serialisiertem Bestand kann nicht bearbeitet werden" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Specify stock quantity" msgstr "Bestandsanzahl angeben" -#: templates/js/translated/stock.js:1114 +#: templates/js/translated/stock.js:1113 msgid "You must select at least one available stock item" msgstr "Sie müssen mindestens einen Lagerartikel auswählen" -#: templates/js/translated/stock.js:1141 +#: templates/js/translated/stock.js:1140 msgid "Confirm stock adjustment" msgstr "Bestands-Anpassung bestätigen" -#: templates/js/translated/stock.js:1277 +#: templates/js/translated/stock.js:1276 msgid "PASS" msgstr "ERFOLGREICH" -#: templates/js/translated/stock.js:1279 +#: templates/js/translated/stock.js:1278 msgid "FAIL" msgstr "FEHLGESCHLAGEN" -#: templates/js/translated/stock.js:1284 +#: templates/js/translated/stock.js:1283 msgid "NO RESULT" msgstr "KEIN ERGEBNIS" -#: templates/js/translated/stock.js:1331 +#: templates/js/translated/stock.js:1330 msgid "Pass test" msgstr "Test bestanden" -#: templates/js/translated/stock.js:1334 +#: templates/js/translated/stock.js:1333 msgid "Add test result" msgstr "Testergebnis hinzufügen" -#: templates/js/translated/stock.js:1360 +#: templates/js/translated/stock.js:1359 msgid "No test results found" msgstr "Keine Testergebnisse gefunden" -#: templates/js/translated/stock.js:1417 +#: templates/js/translated/stock.js:1416 msgid "Test Date" msgstr "Testdatum" -#: templates/js/translated/stock.js:1582 +#: templates/js/translated/stock.js:1581 msgid "Edit Test Result" msgstr "Testergebnis bearbeiten" -#: templates/js/translated/stock.js:1604 +#: templates/js/translated/stock.js:1603 msgid "Delete Test Result" msgstr "Testergebnis löschen" -#: templates/js/translated/stock.js:1633 +#: templates/js/translated/stock.js:1632 msgid "In production" msgstr "In Arbeit" -#: templates/js/translated/stock.js:1637 +#: templates/js/translated/stock.js:1636 msgid "Installed in Stock Item" msgstr "In Lagerartikel installiert" -#: templates/js/translated/stock.js:1645 +#: templates/js/translated/stock.js:1644 msgid "Assigned to Sales Order" msgstr "Auftrag zugewiesen" -#: templates/js/translated/stock.js:1651 +#: templates/js/translated/stock.js:1650 msgid "No stock location set" msgstr "Kein Lagerort gesetzt" -#: templates/js/translated/stock.js:1820 +#: templates/js/translated/stock.js:1815 msgid "Stock item is in production" msgstr "Lagerartikel wird produziert" -#: templates/js/translated/stock.js:1825 +#: templates/js/translated/stock.js:1820 msgid "Stock item assigned to sales order" msgstr "Lagerartikel wurde Auftrag zugewiesen" -#: templates/js/translated/stock.js:1828 +#: templates/js/translated/stock.js:1823 msgid "Stock item assigned to customer" msgstr "Lagerartikel wurde Kunden zugewiesen" -#: templates/js/translated/stock.js:1831 +#: templates/js/translated/stock.js:1826 msgid "Serialized stock item has been allocated" msgstr "Serialisierter Lagerartikel wurde zugewiesen" -#: templates/js/translated/stock.js:1833 +#: templates/js/translated/stock.js:1828 msgid "Stock item has been fully allocated" msgstr "Lagerartikel wurde vollständig zugewiesen" -#: templates/js/translated/stock.js:1835 +#: templates/js/translated/stock.js:1830 msgid "Stock item has been partially allocated" msgstr "Lagerartikel wurde teilweise zugewiesen" -#: templates/js/translated/stock.js:1838 +#: templates/js/translated/stock.js:1833 msgid "Stock item has been installed in another item" msgstr "Lagerartikel in anderem Element verbaut" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1837 msgid "Stock item has expired" msgstr "Lagerartikel ist abgelaufen" -#: templates/js/translated/stock.js:1844 +#: templates/js/translated/stock.js:1839 msgid "Stock item will expire soon" msgstr "Lagerartikel läuft demnächst ab" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1846 msgid "Stock item has been rejected" msgstr "Lagerartikel abgewiesen" -#: templates/js/translated/stock.js:1853 +#: templates/js/translated/stock.js:1848 msgid "Stock item is lost" msgstr "Lagerartikel verloren" -#: templates/js/translated/stock.js:1855 +#: templates/js/translated/stock.js:1850 msgid "Stock item is destroyed" msgstr "Lagerartikel zerstört" -#: templates/js/translated/stock.js:1859 +#: templates/js/translated/stock.js:1854 #: templates/js/translated/table_filters.js:216 msgid "Depleted" msgstr "gelöscht" -#: templates/js/translated/stock.js:1989 +#: templates/js/translated/stock.js:1984 msgid "Supplier part not specified" msgstr "Zuliefererteil nicht angegeben" -#: templates/js/translated/stock.js:2026 +#: templates/js/translated/stock.js:2021 msgid "No stock items matching query" msgstr "Keine zur Anfrage passenden Lagerartikel" -#: templates/js/translated/stock.js:2199 +#: templates/js/translated/stock.js:2194 msgid "Set Stock Status" msgstr "Status setzen" -#: templates/js/translated/stock.js:2213 +#: templates/js/translated/stock.js:2208 msgid "Select Status Code" msgstr "Status Code setzen" -#: templates/js/translated/stock.js:2214 +#: templates/js/translated/stock.js:2209 msgid "Status code must be selected" msgstr "Status Code muss ausgewählt werden" -#: templates/js/translated/stock.js:2446 +#: templates/js/translated/stock.js:2441 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2536 msgid "Details" msgstr "Details" -#: templates/js/translated/stock.js:2557 +#: templates/js/translated/stock.js:2552 msgid "Part information unavailable" msgstr "Artikelinformationen nicht verfügbar" -#: templates/js/translated/stock.js:2579 +#: templates/js/translated/stock.js:2574 msgid "Location no longer exists" msgstr "Standort nicht mehr vorhanden" -#: templates/js/translated/stock.js:2598 +#: templates/js/translated/stock.js:2593 msgid "Purchase order no longer exists" msgstr "Bestellung existiert nicht mehr" -#: templates/js/translated/stock.js:2617 +#: templates/js/translated/stock.js:2612 msgid "Customer no longer exists" msgstr "Kunde existiert nicht mehr" -#: templates/js/translated/stock.js:2635 +#: templates/js/translated/stock.js:2630 msgid "Stock item no longer exists" msgstr "Lagerartikel existiert nicht mehr" -#: templates/js/translated/stock.js:2658 +#: templates/js/translated/stock.js:2653 msgid "Added" msgstr "Hinzugefügt" -#: templates/js/translated/stock.js:2666 +#: templates/js/translated/stock.js:2661 msgid "Removed" msgstr "Entfernt" -#: templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2737 msgid "No installed items" msgstr "Keine installierten Elemente" -#: templates/js/translated/stock.js:2793 templates/js/translated/stock.js:2829 +#: templates/js/translated/stock.js:2788 templates/js/translated/stock.js:2824 msgid "Uninstall Stock Item" msgstr "Lagerartikel entfernen" -#: templates/js/translated/stock.js:2845 +#: templates/js/translated/stock.js:2840 msgid "Select stock item to uninstall" msgstr "Zu deinstallierende Lagerartikel auswählen" -#: templates/js/translated/stock.js:2866 +#: templates/js/translated/stock.js:2861 msgid "Install another stock item into this item" msgstr "Einen weiteren Lagerartikel in dieses Teil installiert" -#: templates/js/translated/stock.js:2867 +#: templates/js/translated/stock.js:2862 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:2869 +#: templates/js/translated/stock.js:2864 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "Der Lagerartikel ist auf ein Teil verknüpft das in der Stückliste für diesen Lagerartikel ist" -#: templates/js/translated/stock.js:2870 +#: templates/js/translated/stock.js:2865 msgid "The Stock Item is currently available in stock" msgstr "Dieser Lagerartikel ist aktuell vorhanden" -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:2866 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:2872 +#: templates/js/translated/stock.js:2867 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:2885 +#: templates/js/translated/stock.js:2880 msgid "Select part to install" msgstr "Teil zur Installation auswählen" @@ -10696,7 +10837,7 @@ msgid "Allow Variant Stock" msgstr "Bestand an Varianten zulassen" #: templates/js/translated/table_filters.js:92 -#: templates/js/translated/table_filters.js:516 +#: templates/js/translated/table_filters.js:520 msgid "Has Pricing" msgstr "" @@ -10912,6 +11053,10 @@ msgstr "Auf Lager" msgid "Purchasable" msgstr "Käuflich" +#: templates/js/translated/table_filters.js:504 +msgid "Has stocktake entries" +msgstr "" + #: templates/js/translated/tables.js:70 msgid "Display calendar view" msgstr "Kalender-Ansicht" @@ -11206,35 +11351,35 @@ msgstr "Berechtigungen" msgid "Important dates" msgstr "wichtige Daten" -#: users/models.py:207 +#: users/models.py:208 msgid "Permission set" msgstr "Berechtigung geändert" -#: users/models.py:215 +#: users/models.py:216 msgid "Group" msgstr "Gruppe" -#: users/models.py:218 +#: users/models.py:219 msgid "View" msgstr "Ansicht" -#: users/models.py:218 +#: users/models.py:219 msgid "Permission to view items" msgstr "Berechtigung Einträge anzuzeigen" -#: users/models.py:220 +#: users/models.py:221 msgid "Permission to add items" msgstr "Berechtigung Einträge zu erstellen" -#: users/models.py:222 +#: users/models.py:223 msgid "Change" msgstr "Ändern" -#: users/models.py:222 +#: users/models.py:223 msgid "Permissions to edit items" msgstr "Berechtigungen Einträge zu ändern" -#: users/models.py:224 +#: users/models.py:225 msgid "Permission to delete items" msgstr "Berechtigung Einträge zu löschen" diff --git a/InvenTree/locale/el/LC_MESSAGES/django.po b/InvenTree/locale/el/LC_MESSAGES/django.po index 83e32c1a60..566e11cd38 100644 --- a/InvenTree/locale/el/LC_MESSAGES/django.po +++ b/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: 2022-12-30 20:46+0000\n" -"PO-Revision-Date: 2022-12-31 11:29\n" +"POT-Creation-Date: 2023-01-01 11:05+0000\n" +"PO-Revision-Date: 2023-01-01 11:26\n" "Last-Translator: \n" "Language-Team: Greek\n" "Language: el_GR\n" @@ -34,7 +34,7 @@ msgstr "Εισάγετε ημερομηνία" #: company/templates/company/sidebar.html:25 order/models.py:943 #: order/templates/order/po_sidebar.html:11 #: order/templates/order/so_sidebar.html:17 part/admin.py:27 -#: part/templates/part/part_sidebar.html:57 +#: part/models.py:2932 part/templates/part/part_sidebar.html:62 #: report/templates/report/inventree_build_order_base.html:172 #: stock/admin.py:103 stock/models.py:2061 stock/models.py:2169 #: stock/serializers.py:321 stock/serializers.py:454 stock/serializers.py:535 @@ -44,8 +44,8 @@ msgstr "Εισάγετε ημερομηνία" #: templates/js/translated/company.js:1023 #: templates/js/translated/order.js:2435 templates/js/translated/order.js:2569 #: templates/js/translated/order.js:3067 templates/js/translated/order.js:4004 -#: templates/js/translated/order.js:4385 templates/js/translated/stock.js:1413 -#: templates/js/translated/stock.js:2020 +#: templates/js/translated/order.js:4385 templates/js/translated/part.js:882 +#: templates/js/translated/stock.js:1412 templates/js/translated/stock.js:2015 msgid "Notes" msgstr "Σημειώσεις" @@ -204,18 +204,18 @@ msgstr "Συνημμένο" msgid "Select file to attach" msgstr "Επιλέξτε αρχείο για επισύναψη" -#: InvenTree/models.py:412 common/models.py:2366 company/models.py:129 +#: InvenTree/models.py:412 common/models.py:2373 company/models.py:129 #: company/models.py:281 company/models.py:516 order/models.py:85 -#: order/models.py:1282 part/admin.py:25 part/models.py:865 +#: order/models.py:1282 part/admin.py:25 part/models.py:866 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: stock/admin.py:102 templates/js/translated/company.js:692 #: templates/js/translated/company.js:1012 -#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1615 +#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1886 msgid "Link" msgstr "Σύνδεσμος" -#: InvenTree/models.py:413 build/models.py:290 part/models.py:866 +#: InvenTree/models.py:413 build/models.py:290 part/models.py:867 #: stock/models.py:716 msgid "Link to external URL" msgstr "Σύνδεσμος προς εξωτερική διεύθυνση URL" @@ -229,12 +229,13 @@ msgstr "Σχόλιο" msgid "File comment" msgstr "Σχόλιο αρχείου" -#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1810 -#: common/models.py:1811 common/models.py:2034 common/models.py:2035 -#: common/models.py:2296 common/models.py:2297 part/models.py:2948 -#: part/models.py:2968 plugin/models.py:264 plugin/models.py:265 +#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1817 +#: common/models.py:1818 common/models.py:2041 common/models.py:2042 +#: common/models.py:2303 common/models.py:2304 part/models.py:2940 +#: part/models.py:3026 part/models.py:3046 plugin/models.py:264 +#: plugin/models.py:265 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2689 +#: templates/js/translated/stock.js:2684 msgid "User" msgstr "Χρήστης" @@ -271,19 +272,20 @@ msgstr "Σφάλμα κατά τη μετονομασία" msgid "Invalid choice" msgstr "Μη έγκυρη επιλογή" -#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2020 -#: company/models.py:363 label/models.py:101 part/models.py:809 -#: part/models.py:3123 plugin/models.py:94 report/models.py:152 +#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2027 +#: company/models.py:363 label/models.py:101 part/models.py:810 +#: part/models.py:3201 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 +#: templates/InvenTree/settings/notifications.html:17 #: templates/InvenTree/settings/plugin.html:60 #: templates/InvenTree/settings/plugin.html:104 #: templates/InvenTree/settings/plugin_settings.html:23 -#: templates/InvenTree/settings/settings.html:344 +#: templates/InvenTree/settings/settings.html:345 #: templates/js/translated/company.js:581 #: templates/js/translated/company.js:794 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:711 templates/js/translated/part.js:880 -#: templates/js/translated/part.js:2010 templates/js/translated/stock.js:2434 +#: templates/js/translated/part.js:982 templates/js/translated/part.js:1151 +#: templates/js/translated/part.js:2291 templates/js/translated/stock.js:2429 msgid "Name" msgstr "Όνομα" @@ -292,24 +294,25 @@ msgstr "Όνομα" #: company/models.py:522 company/templates/company/company_base.html:72 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:108 label/models.py:108 -#: order/models.py:83 part/admin.py:141 part/admin.py:222 part/models.py:832 -#: part/models.py:3132 part/templates/part/category.html:75 +#: order/models.py:83 part/admin.py:174 part/admin.py:255 part/models.py:833 +#: part/models.py:3210 part/templates/part/category.html:75 #: part/templates/part/part_base.html:172 #: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/admin.py:25 stock/templates/stock/location.html:117 +#: templates/InvenTree/settings/notifications.html:19 #: templates/InvenTree/settings/plugin_settings.html:28 -#: templates/InvenTree/settings/settings.html:355 +#: templates/InvenTree/settings/settings.html:356 #: templates/js/translated/bom.js:592 templates/js/translated/bom.js:895 #: templates/js/translated/build.js:2596 templates/js/translated/company.js:445 #: templates/js/translated/company.js:703 #: templates/js/translated/company.js:987 templates/js/translated/order.js:2030 #: templates/js/translated/order.js:2267 templates/js/translated/order.js:2845 -#: templates/js/translated/part.js:773 templates/js/translated/part.js:1223 -#: templates/js/translated/part.js:1497 templates/js/translated/part.js:2046 -#: templates/js/translated/part.js:2121 templates/js/translated/stock.js:1787 -#: templates/js/translated/stock.js:2466 templates/js/translated/stock.js:2526 +#: templates/js/translated/part.js:1044 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1768 templates/js/translated/part.js:2327 +#: templates/js/translated/part.js:2402 templates/js/translated/stock.js:1782 +#: templates/js/translated/stock.js:2461 templates/js/translated/stock.js:2521 msgid "Description" msgstr "Περιγραφή" @@ -322,7 +325,7 @@ msgid "parent" msgstr "γονέας" #: InvenTree/models.py:580 InvenTree/models.py:581 -#: templates/js/translated/part.js:2055 templates/js/translated/stock.js:2475 +#: templates/js/translated/part.js:2336 templates/js/translated/stock.js:2470 msgid "Path" msgstr "Μονοπάτι" @@ -354,7 +357,7 @@ msgstr "Σφάλμα διακομιστή" msgid "An error has been logged by the server." msgstr "Ένα σφάλμα έχει καταγραφεί από το διακομιστή." -#: InvenTree/serializers.py:58 part/models.py:3468 +#: InvenTree/serializers.py:58 part/models.py:3546 msgid "Must be a valid number" msgstr "Πρέπει να είναι αριθμός" @@ -421,107 +424,107 @@ msgstr "Διεύθυνση URL του αρχείου απομακρυσμένη msgid "Downloading images from remote URL is not enabled" msgstr "Η λήψη εικόνων από απομακρυσμένο URL δεν είναι ενεργοποιημένη" -#: InvenTree/settings.py:639 +#: InvenTree/settings.py:642 msgid "Czech" msgstr "Τσέχικα" -#: InvenTree/settings.py:640 +#: InvenTree/settings.py:643 msgid "Danish" msgstr "" -#: InvenTree/settings.py:641 +#: InvenTree/settings.py:644 msgid "German" msgstr "Γερμανικά" -#: InvenTree/settings.py:642 +#: InvenTree/settings.py:645 msgid "Greek" msgstr "Ελληνικά" -#: InvenTree/settings.py:643 +#: InvenTree/settings.py:646 msgid "English" msgstr "Αγγλικά" -#: InvenTree/settings.py:644 +#: InvenTree/settings.py:647 msgid "Spanish" msgstr "Ισπανικά" -#: InvenTree/settings.py:645 +#: InvenTree/settings.py:648 msgid "Spanish (Mexican)" msgstr "Ισπανικά (Μεξικό)" -#: InvenTree/settings.py:646 +#: InvenTree/settings.py:649 msgid "Farsi / Persian" msgstr "Φαρσί / Περσικά" -#: InvenTree/settings.py:647 +#: InvenTree/settings.py:650 msgid "French" msgstr "Γαλλικά" -#: InvenTree/settings.py:648 +#: InvenTree/settings.py:651 msgid "Hebrew" msgstr "Εβραϊκά" -#: InvenTree/settings.py:649 +#: InvenTree/settings.py:652 msgid "Hungarian" msgstr "Ούγγρικα" -#: InvenTree/settings.py:650 +#: InvenTree/settings.py:653 msgid "Italian" msgstr "Ιταλικά" -#: InvenTree/settings.py:651 +#: InvenTree/settings.py:654 msgid "Japanese" msgstr "Ιαπωνικά" -#: InvenTree/settings.py:652 +#: InvenTree/settings.py:655 msgid "Korean" msgstr "Κορεάτικα" -#: InvenTree/settings.py:653 +#: InvenTree/settings.py:656 msgid "Dutch" msgstr "Dutch" -#: InvenTree/settings.py:654 +#: InvenTree/settings.py:657 msgid "Norwegian" msgstr "Νορβηγικά" -#: InvenTree/settings.py:655 +#: InvenTree/settings.py:658 msgid "Polish" msgstr "Πολωνικά" -#: InvenTree/settings.py:656 +#: InvenTree/settings.py:659 msgid "Portuguese" msgstr "Πορτογαλικά" -#: InvenTree/settings.py:657 +#: InvenTree/settings.py:660 msgid "Portuguese (Brazilian)" msgstr "Πορτογαλικά (Βραζιλίας)" -#: InvenTree/settings.py:658 +#: InvenTree/settings.py:661 msgid "Russian" msgstr "Ρωσικά" -#: InvenTree/settings.py:659 +#: InvenTree/settings.py:662 msgid "Slovenian" msgstr "" -#: InvenTree/settings.py:660 +#: InvenTree/settings.py:663 msgid "Swedish" msgstr "Σουηδικά" -#: InvenTree/settings.py:661 +#: InvenTree/settings.py:664 msgid "Thai" msgstr "Ταϊλανδέζικα" -#: InvenTree/settings.py:662 +#: InvenTree/settings.py:665 msgid "Turkish" msgstr "Τούρκικα" -#: InvenTree/settings.py:663 +#: InvenTree/settings.py:666 msgid "Vietnamese" msgstr "Βιετναμέζικα" -#: InvenTree/settings.py:664 +#: InvenTree/settings.py:667 msgid "Chinese" msgstr "Κινέζικα" @@ -652,7 +655,7 @@ msgstr "Έγινε διαχωρισμός από το γονεϊκό αρχεί msgid "Split child item" msgstr "Διαχωρίστηκε θυγατρικό στοιχείο" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2124 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2119 msgid "Merged stock items" msgstr "Έγινε συγχώνευση αποθεμάτων" @@ -756,7 +759,7 @@ msgstr "Σειρά Κατασκευής" #: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:141 -#: templates/InvenTree/settings/sidebar.html:47 +#: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:254 users/models.py:41 msgid "Build Orders" msgstr "Δημιουργία Παραγγελιών" @@ -766,8 +769,9 @@ msgid "Build Order Reference" msgstr "Αναφορά Παραγγελίας Κατασκευής" #: build/models.py:155 order/models.py:241 order/models.py:651 -#: order/models.py:941 part/admin.py:224 part/models.py:3378 +#: order/models.py:941 part/admin.py:257 part/models.py:3456 #: part/templates/part/upload_bom.html:54 +#: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 #: templates/js/translated/bom.js:729 templates/js/translated/bom.js:905 @@ -793,13 +797,15 @@ msgstr "BuildOrder στην οποία έχει δοθεί αυτή η κατα #: build/models.py:180 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:684 #: order/models.py:1038 order/models.py:1149 order/models.py:1150 -#: part/models.py:381 part/models.py:2781 part/models.py:2894 -#: part/models.py:2909 part/models.py:2928 part/models.py:2946 -#: part/models.py:3045 part/models.py:3166 part/models.py:3258 -#: part/models.py:3343 part/models.py:3659 part/serializers.py:853 -#: part/templates/part/part_app_base.html:8 +#: part/models.py:382 part/models.py:2799 part/models.py:2912 +#: part/models.py:2972 part/models.py:2987 part/models.py:3006 +#: part/models.py:3024 part/models.py:3123 part/models.py:3244 +#: part/models.py:3336 part/models.py:3421 part/models.py:3737 +#: part/serializers.py:894 part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 +#: report/templates/report/inventree_bill_of_materials_report.html:110 +#: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_base.html:109 #: report/templates/report/inventree_po_report.html:89 #: report/templates/report/inventree_so_report.html:90 stock/serializers.py:90 @@ -819,12 +825,12 @@ msgstr "BuildOrder στην οποία έχει δοθεί αυτή η κατα #: templates/js/translated/order.js:1172 templates/js/translated/order.js:1676 #: templates/js/translated/order.js:2252 templates/js/translated/order.js:3199 #: templates/js/translated/order.js:3595 templates/js/translated/order.js:3825 -#: templates/js/translated/part.js:1208 templates/js/translated/part.js:1280 -#: templates/js/translated/part.js:1474 templates/js/translated/pricing.js:102 -#: templates/js/translated/stock.js:618 templates/js/translated/stock.js:783 -#: templates/js/translated/stock.js:993 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2552 templates/js/translated/stock.js:2747 -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/part.js:1479 templates/js/translated/part.js:1551 +#: templates/js/translated/part.js:1745 templates/js/translated/pricing.js:102 +#: templates/js/translated/stock.js:617 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:992 templates/js/translated/stock.js:1738 +#: templates/js/translated/stock.js:2547 templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2879 msgid "Part" msgstr "Εξάρτημα" @@ -890,7 +896,7 @@ msgstr "Κωδικός Παρτίδας" msgid "Batch code for this build output" msgstr "Κωδικός παρτίδας για αυτήν την κατασκευή" -#: build/models.py:252 order/models.py:87 part/models.py:1001 +#: build/models.py:252 order/models.py:87 part/models.py:1002 #: part/templates/part/part_base.html:318 templates/js/translated/order.js:2858 msgid "Creation Date" msgstr "Ημερομηνία Δημιουργίας" @@ -923,7 +929,7 @@ msgstr "Χρήστης που εξέδωσε αυτήν την παραγγελ #: build/models.py:283 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:101 #: order/templates/order/order_base.html:185 -#: order/templates/order/sales_order_base.html:183 part/models.py:1005 +#: order/templates/order/sales_order_base.html:183 part/models.py:1006 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2658 templates/js/translated/order.js:2064 msgid "Responsible" @@ -936,7 +942,7 @@ msgstr "Υπεύθυνος για αυτή την παραγγελία κατα #: build/models.py:289 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:188 -#: part/templates/part/part_base.html:376 stock/models.py:714 +#: part/templates/part/part_base.html:390 stock/models.py:714 #: stock/templates/stock/item_base.html:203 msgid "External Link" msgstr "Εξωτερικοί σύνδεσμοι" @@ -1011,8 +1017,8 @@ msgstr "Κατασκευή για εκχώρηση τμημάτων" #: templates/js/translated/order.js:107 templates/js/translated/order.js:3200 #: templates/js/translated/order.js:3502 templates/js/translated/order.js:3507 #: templates/js/translated/order.js:3602 templates/js/translated/order.js:3694 -#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 -#: templates/js/translated/stock.js:2625 +#: templates/js/translated/part.js:803 templates/js/translated/stock.js:618 +#: templates/js/translated/stock.js:783 templates/js/translated/stock.js:2620 msgid "Stock Item" msgstr "Στοιχείο Αποθέματος" @@ -1022,12 +1028,13 @@ msgstr "Στοιχείο πηγαίου αποθέματος" #: build/models.py:1364 build/serializers.py:192 #: build/templates/build/build_base.html:85 -#: build/templates/build/detail.html:34 common/models.py:1842 +#: build/templates/build/detail.html:34 common/models.py:1849 #: order/models.py:934 order/models.py:1460 order/serializers.py:1206 -#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:223 -#: part/forms.py:40 part/models.py:3359 +#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:256 +#: part/forms.py:40 part/models.py:2919 part/models.py:3437 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 +#: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_base.html:113 #: report/templates/report/inventree_po_report.html:90 #: report/templates/report/inventree_so_report.html:91 @@ -1049,13 +1056,14 @@ msgstr "Στοιχείο πηγαίου αποθέματος" #: templates/js/translated/order.js:3201 templates/js/translated/order.js:3521 #: templates/js/translated/order.js:3608 templates/js/translated/order.js:3700 #: templates/js/translated/order.js:3847 templates/js/translated/order.js:4338 -#: templates/js/translated/part.js:1078 templates/js/translated/part.js:2568 +#: templates/js/translated/part.js:805 templates/js/translated/part.js:876 +#: templates/js/translated/part.js:1349 templates/js/translated/part.js:2849 #: templates/js/translated/pricing.js:114 #: templates/js/translated/pricing.js:207 #: templates/js/translated/pricing.js:255 -#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:490 -#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:814 -#: templates/js/translated/stock.js:2674 templates/js/translated/stock.js:2759 +#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:489 +#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:813 +#: templates/js/translated/stock.js:2669 templates/js/translated/stock.js:2754 msgid "Quantity" msgstr "Ποσότητα" @@ -1097,8 +1105,8 @@ msgid "Enter quantity for build output" msgstr "Εισάγετε ποσότητα για την έξοδο κατασκευής" #: build/serializers.py:207 build/serializers.py:683 order/models.py:327 -#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:645 -#: part/serializers.py:1016 stock/models.py:574 stock/models.py:1312 +#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:686 +#: part/serializers.py:1057 stock/models.py:574 stock/models.py:1312 #: stock/serializers.py:294 msgid "Quantity must be greater than zero" msgstr "Η ποσότητα πρέπει να είναι μεγαλύτερη από 0" @@ -1113,7 +1121,7 @@ msgstr "Ακέραιη ποσότητα που απαιτείται, καθώς #: build/serializers.py:231 order/serializers.py:463 order/serializers.py:1210 #: stock/serializers.py:303 templates/js/translated/order.js:1545 -#: templates/js/translated/stock.js:303 templates/js/translated/stock.js:491 +#: templates/js/translated/stock.js:302 templates/js/translated/stock.js:490 msgid "Serial Numbers" msgstr "Σειριακοί αριθμοί" @@ -1146,9 +1154,10 @@ msgstr "" #: templates/js/translated/build.js:1759 templates/js/translated/order.js:1572 #: templates/js/translated/order.js:3514 templates/js/translated/order.js:3619 #: templates/js/translated/order.js:3627 templates/js/translated/order.js:3708 -#: templates/js/translated/part.js:183 templates/js/translated/stock.js:620 -#: templates/js/translated/stock.js:785 templates/js/translated/stock.js:995 -#: templates/js/translated/stock.js:1895 templates/js/translated/stock.js:2566 +#: templates/js/translated/part.js:186 templates/js/translated/part.js:804 +#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 +#: templates/js/translated/stock.js:994 templates/js/translated/stock.js:1890 +#: templates/js/translated/stock.js:2561 msgid "Location" msgstr "" @@ -1162,8 +1171,8 @@ msgstr "" #: stock/templates/stock/item_base.html:421 #: templates/js/translated/barcode.js:237 templates/js/translated/build.js:2630 #: templates/js/translated/order.js:1681 templates/js/translated/order.js:2034 -#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1870 -#: templates/js/translated/stock.js:2643 templates/js/translated/stock.js:2775 +#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:2638 templates/js/translated/stock.js:2770 msgid "Status" msgstr "" @@ -1239,8 +1248,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:595 build/serializers.py:640 part/models.py:3495 -#: part/models.py:3651 +#: build/serializers.py:595 build/serializers.py:640 part/models.py:3573 +#: part/models.py:3729 msgid "BOM Item" msgstr "" @@ -1406,7 +1415,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2670 templates/js/translated/order.js:2051 #: templates/js/translated/order.js:2382 templates/js/translated/order.js:2866 -#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1093 +#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1364 msgid "Target Date" msgstr "" @@ -1484,8 +1493,8 @@ msgstr "" #: stock/templates/stock/item_base.html:168 #: templates/js/translated/build.js:1250 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:1884 -#: templates/js/translated/stock.js:2782 +#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:1879 +#: templates/js/translated/stock.js:2777 #: templates/js/translated/table_filters.js:179 #: templates/js/translated/table_filters.js:270 msgid "Batch" @@ -1617,8 +1626,8 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:86 #: order/templates/order/sales_order_detail.html:140 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:210 -#: part/templates/part/part_sidebar.html:55 stock/templates/stock/item.html:117 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:233 +#: part/templates/part/part_sidebar.html:60 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" msgstr "" @@ -1635,7 +1644,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:316 +#: build/templates/build/index.html:18 part/templates/part/detail.html:339 msgid "New Build Order" msgstr "" @@ -1928,9 +1937,9 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1014 part/admin.py:41 part/models.py:3168 +#: common/models.py:1014 part/admin.py:41 part/models.py:3246 #: report/models.py:158 templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:504 +#: templates/js/translated/table_filters.js:508 msgid "Template" msgstr "" @@ -1938,7 +1947,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:1021 part/admin.py:37 part/admin.py:229 part/models.py:957 +#: common/models.py:1021 part/admin.py:37 part/admin.py:262 part/models.py:958 #: templates/js/translated/bom.js:1595 #: templates/js/translated/table_filters.js:196 #: templates/js/translated/table_filters.js:467 @@ -1949,7 +1958,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1028 part/admin.py:38 part/models.py:963 +#: common/models.py:1028 part/admin.py:38 part/models.py:964 #: templates/js/translated/table_filters.js:475 msgid "Component" msgstr "" @@ -1958,7 +1967,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1035 part/admin.py:39 part/models.py:974 +#: common/models.py:1035 part/admin.py:39 part/models.py:975 msgid "Purchaseable" msgstr "" @@ -1966,7 +1975,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1042 part/admin.py:40 part/models.py:979 +#: common/models.py:1042 part/admin.py:40 part/models.py:980 #: templates/js/translated/table_filters.js:496 msgid "Salable" msgstr "" @@ -1975,10 +1984,10 @@ msgstr "" msgid "Parts are salable by default" msgstr "" -#: common/models.py:1049 part/admin.py:42 part/models.py:969 +#: common/models.py:1049 part/admin.py:42 part/models.py:970 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:120 -#: templates/js/translated/table_filters.js:508 +#: templates/js/translated/table_filters.js:512 msgid "Trackable" msgstr "" @@ -1986,10 +1995,10 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1056 part/admin.py:43 part/models.py:989 +#: common/models.py:1056 part/admin.py:43 part/models.py:990 #: part/templates/part/part_base.html:156 #: templates/js/translated/table_filters.js:42 -#: templates/js/translated/table_filters.js:512 +#: templates/js/translated/table_filters.js:516 msgid "Virtual" msgstr "" @@ -2417,7 +2426,7 @@ msgstr "" msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1461 common/models.py:1803 +#: common/models.py:1461 common/models.py:1810 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -2749,41 +2758,50 @@ msgstr "" msgid "Display part scheduling information" msgstr "" -#: common/models.py:1778 -msgid "Table String Length" +#: common/models.py:1778 part/templates/part/detail.html:61 +#: templates/js/translated/part.js:822 +msgid "Part Stocktake" msgstr "" #: common/models.py:1779 +msgid "Display part stocktake information" +msgstr "" + +#: common/models.py:1785 +msgid "Table String Length" +msgstr "" + +#: common/models.py:1786 msgid "Maximimum length limit for strings displayed in table views" msgstr "" -#: common/models.py:1843 +#: common/models.py:1850 msgid "Price break quantity" msgstr "" -#: common/models.py:1850 company/serializers.py:393 order/models.py:975 -#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1145 +#: common/models.py:1857 company/serializers.py:393 order/models.py:975 +#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1416 #: templates/js/translated/pricing.js:354 msgid "Price" msgstr "" -#: common/models.py:1851 +#: common/models.py:1858 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2011 common/models.py:2189 +#: common/models.py:2018 common/models.py:2196 msgid "Endpoint" msgstr "" -#: common/models.py:2012 +#: common/models.py:2019 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2021 +#: common/models.py:2028 msgid "Name for this webhook" msgstr "" -#: common/models.py:2026 part/admin.py:36 part/models.py:984 +#: common/models.py:2033 part/admin.py:36 part/models.py:985 #: plugin/models.py:100 templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:116 #: templates/js/translated/table_filters.js:336 @@ -2791,131 +2809,133 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:2027 +#: common/models.py:2034 msgid "Is this webhook active" msgstr "" -#: common/models.py:2041 +#: common/models.py:2048 msgid "Token" msgstr "" -#: common/models.py:2042 +#: common/models.py:2049 msgid "Token for access" msgstr "" -#: common/models.py:2049 +#: common/models.py:2056 msgid "Secret" msgstr "" -#: common/models.py:2050 +#: common/models.py:2057 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2156 +#: common/models.py:2163 msgid "Message ID" msgstr "" -#: common/models.py:2157 +#: common/models.py:2164 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2165 +#: common/models.py:2172 msgid "Host" msgstr "" -#: common/models.py:2166 +#: common/models.py:2173 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2173 +#: common/models.py:2180 msgid "Header" msgstr "" -#: common/models.py:2174 +#: common/models.py:2181 msgid "Header of this message" msgstr "" -#: common/models.py:2180 +#: common/models.py:2187 msgid "Body" msgstr "" -#: common/models.py:2181 +#: common/models.py:2188 msgid "Body of this message" msgstr "" -#: common/models.py:2190 +#: common/models.py:2197 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2195 +#: common/models.py:2202 msgid "Worked on" msgstr "" -#: common/models.py:2196 +#: common/models.py:2203 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2355 +#: common/models.py:2362 msgid "Id" msgstr "" -#: common/models.py:2361 templates/js/translated/news.js:35 +#: common/models.py:2368 templates/js/translated/news.js:35 msgid "Title" msgstr "" -#: common/models.py:2371 templates/js/translated/news.js:51 +#: common/models.py:2378 templates/js/translated/news.js:51 msgid "Published" msgstr "" -#: common/models.py:2376 templates/InvenTree/settings/plugin.html:62 +#: common/models.py:2383 templates/InvenTree/settings/plugin.html:62 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/news.js:47 msgid "Author" msgstr "" -#: common/models.py:2381 templates/js/translated/news.js:43 +#: common/models.py:2388 templates/js/translated/news.js:43 msgid "Summary" msgstr "" -#: common/models.py:2386 +#: common/models.py:2393 msgid "Read" msgstr "" -#: common/models.py:2387 +#: common/models.py:2394 msgid "Was this news item read?" msgstr "" -#: common/notifications.py:293 +#: common/notifications.py:294 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:295 +#: common/notifications.py:296 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:301 +#: common/notifications.py:302 msgid "Items Received" msgstr "" -#: common/notifications.py:303 +#: common/notifications.py:304 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:415 +#: common/notifications.py:416 msgid "Error raised by plugin" msgstr "" #: common/views.py:85 order/templates/order/order_wizard/po_upload.html:51 #: order/templates/order/purchase_order_detail.html:25 order/views.py:102 -#: part/views.py:107 templates/patterns/wizard/upload.html:37 +#: part/templates/part/import_wizard/part_upload.html:58 part/views.py:109 +#: templates/patterns/wizard/upload.html:37 msgid "Upload File" msgstr "" #: common/views.py:86 order/templates/order/order_wizard/match_fields.html:52 #: order/views.py:103 #: part/templates/part/import_wizard/ajax_match_fields.html:45 -#: part/views.py:108 templates/patterns/wizard/match_fields.html:51 +#: part/templates/part/import_wizard/match_fields.html:52 part/views.py:110 +#: templates/patterns/wizard/match_fields.html:51 msgid "Match Fields" msgstr "" @@ -2934,7 +2954,9 @@ msgstr "" #: common/views.py:509 order/templates/order/order_wizard/match_fields.html:27 #: order/templates/order/order_wizard/match_parts.html:19 #: order/templates/order/order_wizard/po_upload.html:49 +#: part/templates/part/import_wizard/match_fields.html:27 #: part/templates/part/import_wizard/match_references.html:19 +#: part/templates/part/import_wizard/part_upload.html:56 #: templates/patterns/wizard/match_fields.html:26 #: templates/patterns/wizard/upload.html:35 msgid "Previous Step" @@ -2995,7 +3017,7 @@ msgstr "" msgid "Link to external company information" msgstr "" -#: company/models.py:140 part/models.py:878 +#: company/models.py:140 part/models.py:879 msgid "Image" msgstr "" @@ -3028,8 +3050,8 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:153 company/serializers.py:399 -#: company/templates/company/company_base.html:107 part/models.py:2762 -#: part/serializers.py:154 part/serializers.py:182 stock/serializers.py:182 +#: company/templates/company/company_base.html:107 part/models.py:2780 +#: part/serializers.py:156 part/serializers.py:184 stock/serializers.py:182 #: templates/InvenTree/settings/pricing.html:64 msgid "Currency" msgstr "" @@ -3055,12 +3077,12 @@ msgstr "" #: templates/js/translated/company.js:433 #: templates/js/translated/company.js:534 #: templates/js/translated/company.js:669 -#: templates/js/translated/company.js:957 templates/js/translated/part.js:238 +#: templates/js/translated/company.js:957 templates/js/translated/part.js:241 #: templates/js/translated/table_filters.js:439 msgid "Manufacturer" msgstr "" -#: company/models.py:269 templates/js/translated/part.js:239 +#: company/models.py:269 templates/js/translated/part.js:242 msgid "Select manufacturer" msgstr "" @@ -3070,11 +3092,11 @@ msgstr "" #: templates/js/translated/company.js:533 #: templates/js/translated/company.js:685 #: templates/js/translated/company.js:976 templates/js/translated/order.js:2286 -#: templates/js/translated/part.js:249 templates/js/translated/part.js:1067 +#: templates/js/translated/part.js:252 templates/js/translated/part.js:1338 msgid "MPN" msgstr "" -#: company/models.py:276 templates/js/translated/part.js:250 +#: company/models.py:276 templates/js/translated/part.js:253 msgid "Manufacturer Part Number" msgstr "" @@ -3100,8 +3122,8 @@ msgstr "" #: company/models.py:370 #: report/templates/report/inventree_test_report_base.html:95 #: stock/models.py:2156 templates/js/translated/company.js:582 -#: templates/js/translated/company.js:800 templates/js/translated/part.js:889 -#: templates/js/translated/stock.js:1399 +#: templates/js/translated/company.js:800 templates/js/translated/part.js:1160 +#: templates/js/translated/stock.js:1398 msgid "Value" msgstr "" @@ -3109,10 +3131,10 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:377 part/admin.py:26 part/models.py:951 -#: part/models.py:3128 part/templates/part/part_base.html:286 -#: templates/InvenTree/settings/settings.html:349 -#: templates/js/translated/company.js:806 templates/js/translated/part.js:895 +#: company/models.py:377 part/admin.py:26 part/models.py:952 +#: part/models.py:3206 part/templates/part/part_base.html:286 +#: templates/InvenTree/settings/settings.html:350 +#: templates/js/translated/company.js:806 templates/js/translated/part.js:1166 msgid "Units" msgstr "" @@ -3132,24 +3154,24 @@ msgstr "" #: templates/js/translated/company.js:304 #: templates/js/translated/company.js:437 #: templates/js/translated/company.js:930 templates/js/translated/order.js:2017 -#: templates/js/translated/part.js:219 templates/js/translated/part.js:1035 +#: templates/js/translated/part.js:222 templates/js/translated/part.js:1306 #: templates/js/translated/pricing.js:231 #: templates/js/translated/table_filters.js:443 msgid "Supplier" msgstr "" -#: company/models.py:498 templates/js/translated/part.js:220 +#: company/models.py:498 templates/js/translated/part.js:223 msgid "Select supplier" msgstr "" #: company/models.py:503 company/templates/company/supplier_part.html:146 #: part/bom.py:253 part/bom.py:281 templates/js/translated/company.js:303 -#: templates/js/translated/order.js:2273 templates/js/translated/part.js:230 -#: templates/js/translated/part.js:1053 templates/js/translated/pricing.js:243 +#: templates/js/translated/order.js:2273 templates/js/translated/part.js:233 +#: templates/js/translated/part.js:1324 templates/js/translated/pricing.js:243 msgid "SKU" msgstr "" -#: company/models.py:504 templates/js/translated/part.js:231 +#: company/models.py:504 templates/js/translated/part.js:234 msgid "Supplier stock keeping unit" msgstr "" @@ -3166,24 +3188,25 @@ msgid "Supplier part description" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:181 -#: part/admin.py:225 part/models.py:3381 part/templates/part/upload_bom.html:59 +#: part/admin.py:258 part/models.py:3459 part/templates/part/upload_bom.html:59 +#: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:397 msgid "Note" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "base cost" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:534 company/templates/company/supplier_part.html:167 #: stock/admin.py:101 stock/models.py:682 #: stock/templates/stock/item_base.html:243 -#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2016 +#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2011 msgid "Packaging" msgstr "" @@ -3196,7 +3219,7 @@ msgstr "" #: templates/js/translated/company.js:997 templates/js/translated/order.js:826 #: templates/js/translated/order.js:1253 templates/js/translated/order.js:1508 #: templates/js/translated/order.js:2317 templates/js/translated/order.js:2334 -#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1137 +#: templates/js/translated/part.js:1356 templates/js/translated/part.js:1408 msgid "Pack Quantity" msgstr "" @@ -3204,7 +3227,7 @@ msgstr "" msgid "Unit quantity supplied in a single pack" msgstr "" -#: company/models.py:544 part/models.py:1863 +#: company/models.py:544 part/models.py:1869 msgid "multiple" msgstr "" @@ -3216,8 +3239,8 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:1118 templates/js/translated/build.js:1883 -#: templates/js/translated/build.js:2770 templates/js/translated/part.js:623 -#: templates/js/translated/part.js:626 +#: templates/js/translated/build.js:2770 templates/js/translated/part.js:626 +#: templates/js/translated/part.js:629 #: templates/js/translated/table_filters.js:206 msgid "Available" msgstr "" @@ -3300,7 +3323,7 @@ msgstr "" #: stock/templates/stock/item_base.html:399 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:429 templates/js/translated/order.js:2827 -#: templates/js/translated/stock.js:2607 +#: templates/js/translated/stock.js:2602 #: templates/js/translated/table_filters.js:447 msgid "Customer" msgstr "" @@ -3314,7 +3337,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:206 -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:525 msgid "Remove Image" msgstr "" @@ -3323,19 +3346,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:209 -#: part/templates/part/part_base.html:514 +#: part/templates/part/part_base.html:528 #: templates/InvenTree/settings/user.html:87 #: templates/InvenTree/settings/user.html:149 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:238 -#: part/templates/part/part_base.html:543 +#: part/templates/part/part_base.html:557 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:253 -#: part/templates/part/part_base.html:598 +#: part/templates/part/part_base.html:612 msgid "Download Image" msgstr "" @@ -3351,7 +3374,7 @@ msgstr "" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:357 +#: part/templates/part/detail.html:380 msgid "New Supplier Part" msgstr "" @@ -3380,7 +3403,7 @@ msgstr "" msgid "Create new manufacturer part" msgstr "" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:387 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:410 msgid "New Manufacturer Part" msgstr "" @@ -3394,9 +3417,9 @@ msgstr "" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:35 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:35 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:200 -#: templates/InvenTree/settings/sidebar.html:49 +#: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:293 templates/navbar.html:50 #: users/models.py:42 msgid "Purchase Orders" @@ -3417,9 +3440,9 @@ msgstr "" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:39 +#: part/templates/part/detail.html:130 part/templates/part/part_sidebar.html:39 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:220 -#: templates/InvenTree/settings/sidebar.html:51 +#: templates/InvenTree/settings/sidebar.html:53 #: templates/js/translated/search.js:317 templates/navbar.html:61 #: users/models.py:43 msgid "Sales Orders" @@ -3451,7 +3474,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:221 -#: part/templates/part/detail.html:87 part/templates/part/part_base.html:85 +#: part/templates/part/detail.html:110 part/templates/part/part_base.html:85 msgid "Order part" msgstr "" @@ -3482,28 +3505,28 @@ msgid "Suppliers" msgstr "" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:368 +#: part/templates/part/detail.html:391 msgid "Delete supplier parts" msgstr "" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:369 part/templates/part/detail.html:399 -#: templates/js/translated/forms.js:455 templates/js/translated/helpers.js:38 -#: templates/js/translated/part.js:351 templates/js/translated/stock.js:188 -#: users/models.py:224 +#: part/templates/part/detail.html:392 part/templates/part/detail.html:422 +#: templates/js/translated/forms.js:458 templates/js/translated/helpers.js:38 +#: templates/js/translated/part.js:354 templates/js/translated/stock.js:187 +#: users/models.py:225 msgid "Delete" msgstr "" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:184 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:207 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:189 +#: part/templates/part/detail.html:212 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:62 msgid "New Parameter" @@ -3514,7 +3537,7 @@ msgid "Delete parameters" msgstr "" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:825 +#: part/templates/part/detail.html:865 msgid "Add Parameter" msgstr "" @@ -3538,7 +3561,7 @@ msgstr "" #: company/templates/company/supplier_part.html:24 stock/models.py:665 #: stock/templates/stock/item_base.html:236 #: templates/js/translated/company.js:946 templates/js/translated/order.js:1173 -#: templates/js/translated/stock.js:1974 +#: templates/js/translated/stock.js:1969 msgid "Supplier Part" msgstr "" @@ -3578,7 +3601,7 @@ msgstr "" #: company/templates/company/supplier_part.html:56 #: company/templates/company/supplier_part.html:57 #: company/templates/company/supplier_part.html:222 -#: part/templates/part/detail.html:88 +#: part/templates/part/detail.html:111 msgid "Order Part" msgstr "" @@ -3630,7 +3653,7 @@ msgstr "" #: company/templates/company/supplier_part.html:204 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:198 -#: templates/js/translated/stock.js:467 +#: templates/js/translated/stock.js:466 msgid "New Stock Item" msgstr "" @@ -3662,10 +3685,10 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 -#: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/part.js:777 templates/js/translated/part.js:1378 -#: templates/js/translated/part.js:1534 templates/js/translated/stock.js:994 -#: templates/js/translated/stock.js:1799 templates/navbar.html:31 +#: templates/InvenTree/settings/sidebar.html:47 +#: templates/js/translated/part.js:1048 templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1805 templates/js/translated/stock.js:993 +#: templates/js/translated/stock.js:1794 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3680,7 +3703,7 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:29 #: part/templates/part/part_sidebar.html:30 -#: templates/InvenTree/settings/sidebar.html:35 +#: templates/InvenTree/settings/sidebar.html:37 msgid "Pricing" msgstr "" @@ -3692,7 +3715,7 @@ msgstr "" #: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:155 templates/js/translated/search.js:225 -#: templates/js/translated/stock.js:2484 users/models.py:40 +#: templates/js/translated/stock.js:2479 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3801,9 +3824,9 @@ msgstr "" #: stock/templates/stock/item_base.html:182 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:619 templates/js/translated/order.js:1174 -#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1012 -#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1954 -#: templates/js/translated/stock.js:2588 +#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1283 +#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1949 +#: templates/js/translated/stock.js:2583 msgid "Purchase Order" msgstr "" @@ -3973,7 +3996,7 @@ msgstr "" #: order/models.py:1046 order/templates/order/order_base.html:178 #: templates/js/translated/order.js:1679 templates/js/translated/order.js:2404 -#: templates/js/translated/part.js:1129 templates/js/translated/part.js:1161 +#: templates/js/translated/part.js:1400 templates/js/translated/part.js:1432 #: templates/js/translated/table_filters.js:358 msgid "Received" msgstr "" @@ -3984,7 +4007,7 @@ msgstr "" #: order/models.py:1054 stock/models.py:800 stock/serializers.py:173 #: stock/templates/stock/item_base.html:189 -#: templates/js/translated/stock.js:2005 +#: templates/js/translated/stock.js:2000 msgid "Purchase Price" msgstr "" @@ -4350,18 +4373,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:9 #: part/templates/part/import_wizard/ajax_match_fields.html:9 +#: part/templates/part/import_wizard/match_fields.html:9 #: templates/patterns/wizard/match_fields.html:8 msgid "Missing selections for the following required columns" msgstr "" #: order/templates/order/order_wizard/match_fields.html:20 #: part/templates/part/import_wizard/ajax_match_fields.html:20 +#: part/templates/part/import_wizard/match_fields.html:20 #: templates/patterns/wizard/match_fields.html:19 msgid "Duplicate selections found, see below. Fix them then retry submitting." msgstr "" #: order/templates/order/order_wizard/match_fields.html:29 #: order/templates/order/order_wizard/match_parts.html:21 +#: part/templates/part/import_wizard/match_fields.html:29 #: part/templates/part/import_wizard/match_references.html:21 #: templates/patterns/wizard/match_fields.html:28 msgid "Submit Selections" @@ -4369,18 +4395,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:35 #: part/templates/part/import_wizard/ajax_match_fields.html:28 +#: part/templates/part/import_wizard/match_fields.html:35 #: templates/patterns/wizard/match_fields.html:34 msgid "File Fields" msgstr "" #: order/templates/order/order_wizard/match_fields.html:42 #: part/templates/part/import_wizard/ajax_match_fields.html:35 +#: part/templates/part/import_wizard/match_fields.html:42 #: templates/patterns/wizard/match_fields.html:41 msgid "Remove column" msgstr "" #: order/templates/order/order_wizard/match_fields.html:60 #: part/templates/part/import_wizard/ajax_match_fields.html:53 +#: part/templates/part/import_wizard/match_fields.html:60 #: templates/patterns/wizard/match_fields.html:59 msgid "Duplicate selection" msgstr "" @@ -4389,12 +4418,13 @@ msgstr "" #: order/templates/order/order_wizard/match_parts.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: 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:102 templates/js/translated/build.js:485 #: templates/js/translated/build.js:641 templates/js/translated/build.js:2088 #: templates/js/translated/order.js:1122 templates/js/translated/order.js:1624 -#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:657 -#: templates/js/translated/stock.js:825 +#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:824 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4429,6 +4459,7 @@ msgstr "" #: order/templates/order/order_wizard/po_upload.html:27 #: part/templates/part/import_wizard/ajax_part_upload.html:10 +#: part/templates/part/import_wizard/part_upload.html:26 #: templates/patterns/wizard/upload.html:13 #, python-format msgid "Step %(step)s of %(count)s" @@ -4567,12 +4598,12 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:19 part/admin.py:219 part/models.py:3262 stock/admin.py:84 +#: part/admin.py:19 part/admin.py:252 part/models.py:3340 stock/admin.py:84 #: templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/admin.py:20 part/admin.py:221 part/models.py:3266 stock/admin.py:85 +#: part/admin.py:20 part/admin.py:254 part/models.py:3344 stock/admin.py:85 msgid "Part Name" msgstr "" @@ -4580,32 +4611,32 @@ msgstr "" msgid "Part Description" msgstr "" -#: part/admin.py:22 part/models.py:852 part/templates/part/part_base.html:272 -#: templates/js/translated/part.js:763 templates/js/translated/part.js:1491 -#: templates/js/translated/stock.js:1765 +#: part/admin.py:22 part/models.py:853 part/templates/part/part_base.html:272 +#: templates/js/translated/part.js:1034 templates/js/translated/part.js:1762 +#: templates/js/translated/stock.js:1760 msgid "IPN" msgstr "" -#: part/admin.py:23 part/models.py:860 part/templates/part/part_base.html:279 -#: report/models.py:171 templates/js/translated/part.js:768 +#: part/admin.py:23 part/models.py:861 part/templates/part/part_base.html:279 +#: report/models.py:171 templates/js/translated/part.js:1039 msgid "Revision" msgstr "" -#: part/admin.py:24 part/admin.py:145 part/models.py:838 +#: part/admin.py:24 part/admin.py:178 part/models.py:839 #: part/templates/part/category.html:87 part/templates/part/part_base.html:300 msgid "Keywords" msgstr "" -#: part/admin.py:28 part/admin.py:139 +#: part/admin.py:28 part/admin.py:172 #: templates/js/translated/model_renderers.js:338 msgid "Category ID" msgstr "" -#: part/admin.py:29 part/admin.py:140 +#: part/admin.py:29 part/admin.py:173 msgid "Category Name" msgstr "" -#: part/admin.py:30 part/admin.py:144 +#: part/admin.py:30 part/admin.py:177 msgid "Default Location ID" msgstr "" @@ -4613,7 +4644,7 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:33 part/models.py:944 part/templates/part/part_base.html:206 +#: part/admin.py:33 part/models.py:945 part/templates/part/part_base.html:206 msgid "Minimum Stock" msgstr "" @@ -4625,8 +4656,8 @@ msgstr "" #: part/admin.py:48 part/bom.py:145 part/templates/part/part_base.html:213 #: templates/js/translated/bom.js:1156 templates/js/translated/build.js:1935 -#: templates/js/translated/part.js:613 templates/js/translated/part.js:633 -#: templates/js/translated/part.js:1381 templates/js/translated/part.js:1559 +#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 +#: templates/js/translated/part.js:1652 templates/js/translated/part.js:1830 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4642,115 +4673,115 @@ msgid "Allocated" msgstr "" #: part/admin.py:51 part/templates/part/part_base.html:244 -#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 -#: templates/js/translated/part.js:1385 templates/js/translated/part.js:1566 +#: templates/js/translated/part.js:619 templates/js/translated/part.js:639 +#: templates/js/translated/part.js:1656 templates/js/translated/part.js:1837 msgid "Building" msgstr "" -#: part/admin.py:52 part/models.py:2846 +#: part/admin.py:52 part/models.py:2864 msgid "Minimum Cost" msgstr "" -#: part/admin.py:53 part/models.py:2852 +#: part/admin.py:53 part/models.py:2870 msgid "Maximum Cost" msgstr "" -#: part/admin.py:142 part/admin.py:216 stock/admin.py:26 stock/admin.py:98 +#: part/admin.py:175 part/admin.py:249 stock/admin.py:26 stock/admin.py:98 msgid "Parent ID" msgstr "" -#: part/admin.py:143 part/admin.py:218 stock/admin.py:27 +#: part/admin.py:176 part/admin.py:251 stock/admin.py:27 msgid "Parent Name" msgstr "" -#: part/admin.py:146 part/templates/part/category.html:81 +#: part/admin.py:179 part/templates/part/category.html:81 #: part/templates/part/category.html:94 msgid "Category Path" msgstr "" -#: part/admin.py:149 part/models.py:382 part/templates/part/cat_link.html:3 +#: part/admin.py:182 part/models.py:383 part/templates/part/cat_link.html:3 #: part/templates/part/category.html:23 part/templates/part/category.html:134 #: part/templates/part/category.html:154 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:84 -#: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:2065 templates/js/translated/search.js:146 +#: templates/InvenTree/settings/sidebar.html:43 +#: templates/js/translated/part.js:2346 templates/js/translated/search.js:146 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" -#: part/admin.py:211 +#: part/admin.py:244 msgid "BOM Level" msgstr "" -#: part/admin.py:213 +#: part/admin.py:246 msgid "BOM Item ID" msgstr "" -#: part/admin.py:217 +#: part/admin.py:250 msgid "Parent IPN" msgstr "" -#: part/admin.py:220 part/models.py:3270 +#: part/admin.py:253 part/models.py:3348 msgid "Part IPN" msgstr "" -#: part/admin.py:226 templates/js/translated/pricing.js:91 +#: part/admin.py:259 templates/js/translated/pricing.js:91 #: templates/js/translated/pricing.js:732 msgid "Minimum Price" msgstr "" -#: part/admin.py:227 templates/js/translated/pricing.js:86 +#: part/admin.py:260 templates/js/translated/pricing.js:86 #: templates/js/translated/pricing.js:740 msgid "Maximum Price" msgstr "" -#: part/api.py:536 +#: part/api.py:538 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:556 +#: part/api.py:558 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:574 +#: part/api.py:576 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:660 +#: part/api.py:662 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:818 +#: part/api.py:820 msgid "Valid" msgstr "" -#: part/api.py:819 +#: part/api.py:821 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:825 +#: part/api.py:827 msgid "This option must be selected" msgstr "" -#: part/api.py:1265 +#: part/api.py:1281 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1269 +#: part/api.py:1285 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1284 +#: part/api.py:1300 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1315 part/api.py:1319 part/api.py:1334 part/api.py:1338 +#: part/api.py:1331 part/api.py:1335 part/api.py:1350 part/api.py:1354 msgid "This field is required" msgstr "" -#: part/bom.py:142 part/models.py:116 part/models.py:887 -#: part/templates/part/category.html:109 part/templates/part/part_base.html:360 +#: part/bom.py:142 part/models.py:116 part/models.py:888 +#: part/templates/part/category.html:109 part/templates/part/part_base.html:374 msgid "Default Location" msgstr "" @@ -4801,7 +4832,7 @@ msgstr "" msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:159 part/models.py:3211 part/templates/part/category.html:16 +#: part/models.py:159 part/models.py:3289 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -4812,423 +4843,459 @@ msgstr "" msgid "Part Categories" msgstr "" -#: part/models.py:468 +#: part/models.py:469 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:538 part/models.py:550 +#: part/models.py:539 part/models.py:551 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:640 +#: part/models.py:641 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:771 +#: part/models.py:772 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:776 +#: part/models.py:777 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:790 +#: part/models.py:791 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:808 part/models.py:3267 +#: part/models.py:809 part/models.py:3345 msgid "Part name" msgstr "" -#: part/models.py:815 +#: part/models.py:816 msgid "Is Template" msgstr "" -#: part/models.py:816 +#: part/models.py:817 msgid "Is this part a template part?" msgstr "" -#: part/models.py:826 +#: part/models.py:827 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:827 +#: part/models.py:828 msgid "Variant Of" msgstr "" -#: part/models.py:833 +#: part/models.py:834 msgid "Part description" msgstr "" -#: part/models.py:839 +#: part/models.py:840 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:846 part/models.py:2966 part/models.py:3210 +#: part/models.py:847 part/models.py:3044 part/models.py:3288 #: part/templates/part/part_base.html:263 -#: templates/InvenTree/settings/settings.html:229 +#: templates/InvenTree/settings/settings.html:230 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1513 templates/js/translated/part.js:1770 +#: templates/js/translated/part.js:1784 templates/js/translated/part.js:2051 msgid "Category" msgstr "" -#: part/models.py:847 +#: part/models.py:848 msgid "Part category" msgstr "" -#: part/models.py:853 +#: part/models.py:854 msgid "Internal Part Number" msgstr "" -#: part/models.py:859 +#: part/models.py:860 msgid "Part revision or version number" msgstr "" -#: part/models.py:885 +#: part/models.py:886 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:930 part/templates/part/part_base.html:369 +#: part/models.py:931 part/templates/part/part_base.html:383 msgid "Default Supplier" msgstr "" -#: part/models.py:931 +#: part/models.py:932 msgid "Default supplier part" msgstr "" -#: part/models.py:938 +#: part/models.py:939 msgid "Default Expiry" msgstr "" -#: part/models.py:939 +#: part/models.py:940 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:945 +#: part/models.py:946 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:952 +#: part/models.py:953 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:958 +#: part/models.py:959 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:964 +#: part/models.py:965 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:970 +#: part/models.py:971 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:975 +#: part/models.py:976 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:980 +#: part/models.py:981 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:985 +#: part/models.py:986 msgid "Is this part active?" msgstr "" -#: part/models.py:990 +#: part/models.py:991 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:992 +#: part/models.py:993 msgid "Part notes" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "BOM checksum" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:997 +#: part/models.py:998 msgid "BOM checked by" msgstr "" -#: part/models.py:999 +#: part/models.py:1000 msgid "BOM checked date" msgstr "" -#: part/models.py:1003 +#: part/models.py:1004 msgid "Creation User" msgstr "" -#: part/models.py:1863 +#: part/models.py:1010 part/templates/part/part_base.html:345 +#: stock/templates/stock/item_base.html:445 +#: templates/js/translated/part.js:1901 +msgid "Last Stocktake" +msgstr "" + +#: part/models.py:1869 msgid "Sell multiple" msgstr "" -#: part/models.py:2763 +#: part/models.py:2781 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:2768 +#: part/models.py:2786 templates/js/translated/part.js:806 msgid "Updated" msgstr "" -#: part/models.py:2769 +#: part/models.py:2787 msgid "Timestamp of last pricing update" msgstr "" -#: part/models.py:2786 +#: part/models.py:2804 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:2787 +#: part/models.py:2805 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:2792 +#: part/models.py:2810 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:2793 +#: part/models.py:2811 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:2798 +#: part/models.py:2816 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:2799 +#: part/models.py:2817 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:2804 +#: part/models.py:2822 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:2805 +#: part/models.py:2823 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:2810 +#: part/models.py:2828 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:2811 +#: part/models.py:2829 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:2816 +#: part/models.py:2834 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:2817 +#: part/models.py:2835 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:2822 +#: part/models.py:2840 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:2823 +#: part/models.py:2841 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:2828 +#: part/models.py:2846 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:2829 +#: part/models.py:2847 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:2834 +#: part/models.py:2852 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:2835 +#: part/models.py:2853 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:2840 +#: part/models.py:2858 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:2841 +#: part/models.py:2859 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:2847 +#: part/models.py:2865 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:2853 +#: part/models.py:2871 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:2858 +#: part/models.py:2876 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:2859 +#: part/models.py:2877 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:2864 +#: part/models.py:2882 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:2865 +#: part/models.py:2883 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:2870 +#: part/models.py:2888 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:2871 +#: part/models.py:2889 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:2876 +#: part/models.py:2894 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:2877 +#: part/models.py:2895 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3013 +#: part/models.py:2913 +msgid "Part for stocktake" +msgstr "" + +#: part/models.py:2920 +msgid "Total available stock at time of stocktake" +msgstr "" + +#: part/models.py:2924 part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:63 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:2043 templates/js/translated/part.js:887 +#: templates/js/translated/pricing.js:537 +#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2511 +msgid "Date" +msgstr "" + +#: part/models.py:2925 +msgid "Date stocktake was performed" +msgstr "" + +#: part/models.py:2933 +msgid "Additional notes" +msgstr "" + +#: part/models.py:2941 +msgid "User who performed this stocktake" +msgstr "" + +#: part/models.py:3091 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3030 +#: part/models.py:3108 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:3050 templates/js/translated/part.js:2116 -#: templates/js/translated/stock.js:1379 +#: part/models.py:3128 templates/js/translated/part.js:2397 +#: templates/js/translated/stock.js:1378 msgid "Test Name" msgstr "" -#: part/models.py:3051 +#: part/models.py:3129 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3056 +#: part/models.py:3134 msgid "Test Description" msgstr "" -#: part/models.py:3057 +#: part/models.py:3135 msgid "Enter description for this test" msgstr "" -#: part/models.py:3062 templates/js/translated/part.js:2125 +#: part/models.py:3140 templates/js/translated/part.js:2406 #: templates/js/translated/table_filters.js:322 msgid "Required" msgstr "" -#: part/models.py:3063 +#: part/models.py:3141 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3068 templates/js/translated/part.js:2133 +#: part/models.py:3146 templates/js/translated/part.js:2414 msgid "Requires Value" msgstr "" -#: part/models.py:3069 +#: part/models.py:3147 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3074 templates/js/translated/part.js:2140 +#: part/models.py:3152 templates/js/translated/part.js:2421 msgid "Requires Attachment" msgstr "" -#: part/models.py:3075 +#: part/models.py:3153 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3116 +#: part/models.py:3194 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3124 +#: part/models.py:3202 msgid "Parameter Name" msgstr "" -#: part/models.py:3128 +#: part/models.py:3206 msgid "Parameter Units" msgstr "" -#: part/models.py:3133 +#: part/models.py:3211 msgid "Parameter description" msgstr "" -#: part/models.py:3166 +#: part/models.py:3244 msgid "Parent Part" msgstr "" -#: part/models.py:3168 part/models.py:3216 part/models.py:3217 -#: templates/InvenTree/settings/settings.html:224 +#: part/models.py:3246 part/models.py:3294 part/models.py:3295 +#: templates/InvenTree/settings/settings.html:225 msgid "Parameter Template" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Data" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Parameter Value" msgstr "" -#: part/models.py:3221 templates/InvenTree/settings/settings.html:233 +#: part/models.py:3299 templates/InvenTree/settings/settings.html:234 msgid "Default Value" msgstr "" -#: part/models.py:3222 +#: part/models.py:3300 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3259 +#: part/models.py:3337 msgid "Part ID or part name" msgstr "" -#: part/models.py:3263 +#: part/models.py:3341 msgid "Unique part ID value" msgstr "" -#: part/models.py:3271 +#: part/models.py:3349 msgid "Part IPN value" msgstr "" -#: part/models.py:3274 +#: part/models.py:3352 msgid "Level" msgstr "" -#: part/models.py:3275 +#: part/models.py:3353 msgid "BOM level" msgstr "" -#: part/models.py:3344 +#: part/models.py:3422 msgid "Select parent part" msgstr "" -#: part/models.py:3352 +#: part/models.py:3430 msgid "Sub part" msgstr "" -#: part/models.py:3353 +#: part/models.py:3431 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:3359 +#: part/models.py:3437 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:3363 part/templates/part/upload_bom.html:58 +#: part/models.py:3441 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:933 templates/js/translated/bom.js:986 #: templates/js/translated/build.js:1868 #: templates/js/translated/table_filters.js:84 @@ -5236,189 +5303,189 @@ msgstr "" msgid "Optional" msgstr "" -#: part/models.py:3364 +#: part/models.py:3442 msgid "This BOM item is optional" msgstr "" -#: part/models.py:3369 templates/js/translated/bom.js:929 +#: part/models.py:3447 templates/js/translated/bom.js:929 #: templates/js/translated/bom.js:995 templates/js/translated/build.js:1859 #: templates/js/translated/table_filters.js:88 msgid "Consumable" msgstr "" -#: part/models.py:3370 +#: part/models.py:3448 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:3374 part/templates/part/upload_bom.html:55 +#: part/models.py:3452 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:3375 +#: part/models.py:3453 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:3378 +#: part/models.py:3456 msgid "BOM item reference" msgstr "" -#: part/models.py:3381 +#: part/models.py:3459 msgid "BOM item notes" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "Checksum" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "BOM line checksum" msgstr "" -#: part/models.py:3387 part/templates/part/upload_bom.html:57 +#: part/models.py:3465 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1012 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:108 msgid "Inherited" msgstr "" -#: part/models.py:3388 +#: part/models.py:3466 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:3393 part/templates/part/upload_bom.html:56 +#: part/models.py:3471 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1004 msgid "Allow Variants" msgstr "" -#: part/models.py:3394 +#: part/models.py:3472 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:3480 stock/models.py:558 +#: part/models.py:3558 stock/models.py:558 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:3489 part/models.py:3491 +#: part/models.py:3567 part/models.py:3569 msgid "Sub part must be specified" msgstr "" -#: part/models.py:3618 +#: part/models.py:3696 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:3639 +#: part/models.py:3717 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:3652 +#: part/models.py:3730 msgid "Parent BOM item" msgstr "" -#: part/models.py:3660 +#: part/models.py:3738 msgid "Substitute part" msgstr "" -#: part/models.py:3675 +#: part/models.py:3753 msgid "Part 1" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Part 2" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Select Related Part" msgstr "" -#: part/models.py:3697 +#: part/models.py:3775 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:3701 +#: part/models.py:3779 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:155 part/serializers.py:183 stock/serializers.py:183 +#: part/serializers.py:157 part/serializers.py:185 stock/serializers.py:183 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:543 +#: part/serializers.py:584 msgid "Update" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:585 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:854 +#: part/serializers.py:895 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:862 +#: part/serializers.py:903 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:863 +#: part/serializers.py:904 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:868 +#: part/serializers.py:909 msgid "Include Inherited" msgstr "" -#: part/serializers.py:869 +#: part/serializers.py:910 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:874 +#: part/serializers.py:915 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:875 +#: part/serializers.py:916 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:921 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:881 +#: part/serializers.py:922 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:962 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:922 +#: part/serializers.py:963 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:952 +#: part/serializers.py:993 msgid "No part column specified" msgstr "" -#: part/serializers.py:995 +#: part/serializers.py:1036 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:998 +#: part/serializers.py:1039 msgid "No matching part found" msgstr "" -#: part/serializers.py:1001 +#: part/serializers.py:1042 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1010 +#: part/serializers.py:1051 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1059 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1039 +#: part/serializers.py:1080 msgid "At least one BOM item is required" msgstr "" @@ -5450,7 +5517,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:267 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:290 msgid "BOM actions" msgstr "" @@ -5507,8 +5574,8 @@ msgstr "" msgid "New Part" msgstr "" -#: part/templates/part/category.html:169 part/templates/part/detail.html:366 -#: part/templates/part/detail.html:397 +#: part/templates/part/category.html:169 part/templates/part/detail.html:389 +#: part/templates/part/detail.html:420 msgid "Options" msgstr "" @@ -5556,7 +5623,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:404 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:407 msgid "Duplicate Part" msgstr "" @@ -5593,118 +5660,128 @@ msgstr "" msgid "Refresh" msgstr "" -#: part/templates/part/detail.html:59 +#: part/templates/part/detail.html:65 +msgid "Add stocktake information" +msgstr "" + +#: part/templates/part/detail.html:66 part/templates/part/part_sidebar.html:49 +#: stock/admin.py:107 templates/js/translated/stock.js:1905 +msgid "Stocktake" +msgstr "" + +#: part/templates/part/detail.html:82 msgid "Part Test Templates" msgstr "" -#: part/templates/part/detail.html:64 +#: part/templates/part/detail.html:87 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:144 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:141 +#: part/templates/part/detail.html:164 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:156 +#: part/templates/part/detail.html:179 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:160 +#: part/templates/part/detail.html:183 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:161 +#: part/templates/part/detail.html:184 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:188 +#: part/templates/part/detail.html:211 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:225 part/templates/part/part_sidebar.html:52 +#: part/templates/part/detail.html:248 part/templates/part/part_sidebar.html:57 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:229 part/templates/part/detail.html:230 +#: part/templates/part/detail.html:252 part/templates/part/detail.html:253 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:250 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:273 part/templates/part/part_sidebar.html:17 +#: report/templates/report/inventree_bill_of_materials_report.html:100 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:255 +#: part/templates/part/detail.html:278 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:259 templates/js/translated/bom.js:309 +#: part/templates/part/detail.html:282 templates/js/translated/bom.js:309 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:261 +#: part/templates/part/detail.html:284 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:271 +#: part/templates/part/detail.html:294 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:272 templates/js/translated/part.js:276 +#: part/templates/part/detail.html:295 templates/js/translated/part.js:279 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:273 +#: part/templates/part/detail.html:296 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:278 part/templates/part/detail.html:279 +#: part/templates/part/detail.html:301 part/templates/part/detail.html:302 #: templates/js/translated/bom.js:1268 templates/js/translated/bom.js:1269 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:292 +#: part/templates/part/detail.html:315 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:310 +#: part/templates/part/detail.html:333 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:337 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:360 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:353 +#: part/templates/part/detail.html:376 msgid "Part Suppliers" msgstr "" -#: part/templates/part/detail.html:383 +#: part/templates/part/detail.html:406 msgid "Part Manufacturers" msgstr "" -#: part/templates/part/detail.html:399 +#: part/templates/part/detail.html:422 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:696 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:704 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:796 msgid "Add Test Result Template" msgstr "" #: part/templates/part/import_wizard/ajax_part_upload.html:29 #: part/templates/part/import_wizard/part_upload.html:14 -msgid "Unsuffitient privileges." +msgid "Insufficient privileges." msgstr "" #: part/templates/part/import_wizard/part_upload.html:8 @@ -5715,6 +5792,34 @@ msgstr "" msgid "Import Parts from File" msgstr "" +#: part/templates/part/import_wizard/part_upload.html:31 +msgid "Requirements for part import" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "The part import file must contain the required named columns as provided in the " +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:89 +msgid "Download Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:92 +#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 +#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 +msgid "Format" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:93 +#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 +#: templates/js/translated/order.js:999 +msgid "Select file format" +msgstr "" + #: part/templates/part/part_app_base.html:12 msgid "Part List" msgstr "" @@ -5804,12 +5909,12 @@ msgstr "" #: templates/js/translated/company.js:660 #: templates/js/translated/company.js:921 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:677 templates/js/translated/part.js:755 +#: templates/js/translated/part.js:680 templates/js/translated/part.js:1026 msgid "Inactive" msgstr "" #: part/templates/part/part_base.html:165 -#: part/templates/part/part_base.html:666 +#: part/templates/part/part_base.html:680 msgid "Show Part Details" msgstr "" @@ -5837,38 +5942,38 @@ msgid "Minimum stock level" msgstr "" #: part/templates/part/part_base.html:330 templates/js/translated/bom.js:1032 -#: templates/js/translated/part.js:798 templates/js/translated/part.js:1604 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:1875 #: templates/js/translated/pricing.js:124 #: templates/js/translated/pricing.js:762 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:345 +#: part/templates/part/part_base.html:359 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:349 +#: part/templates/part/part_base.html:363 #: stock/templates/stock/item_base.html:331 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:449 +#: part/templates/part/part_base.html:463 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:495 +#: part/templates/part/part_base.html:509 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:512 +#: part/templates/part/part_base.html:526 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:564 +#: part/templates/part/part_base.html:578 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:660 +#: part/templates/part/part_base.html:674 msgid "Hide Part Details" msgstr "" @@ -5920,15 +6025,6 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" -#: part/templates/part/part_scheduling.html:13 -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:63 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:2043 templates/js/translated/pricing.js:537 -#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2516 -msgid "Date" -msgstr "" - #: part/templates/part/part_scheduling.html:14 msgid "Scheduled Quantity" msgstr "" @@ -5941,7 +6037,7 @@ msgstr "" msgid "Scheduling" msgstr "" -#: part/templates/part/part_sidebar.html:48 +#: part/templates/part/part_sidebar.html:53 msgid "Test Templates" msgstr "" @@ -5960,7 +6056,7 @@ msgstr "" #: part/templates/part/prices.html:25 stock/admin.py:106 #: stock/templates/stock/item_base.html:440 #: templates/js/translated/company.js:1039 -#: templates/js/translated/stock.js:1940 +#: templates/js/translated/stock.js:1935 msgid "Last Updated" msgstr "" @@ -6023,8 +6119,8 @@ msgstr "" msgid "Add Sell Price Break" msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:639 -#: templates/js/translated/part.js:1373 templates/js/translated/part.js:1375 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:1644 templates/js/translated/part.js:1646 msgid "No Stock" msgstr "" @@ -6087,27 +6183,32 @@ msgstr "" msgid "{title} v{version}" msgstr "" -#: part/views.py:109 +#: part/views.py:111 msgid "Match References" msgstr "" -#: part/views.py:354 +#: part/views.py:239 +#, python-brace-format +msgid "Can't import part {name} because there is no category assigned" +msgstr "" + +#: part/views.py:378 msgid "Part QR Code" msgstr "" -#: part/views.py:372 +#: part/views.py:396 msgid "Select Part Image" msgstr "" -#: part/views.py:398 +#: part/views.py:422 msgid "Updated part image" msgstr "" -#: part/views.py:401 +#: part/views.py:425 msgid "Part image not found" msgstr "" -#: part/views.py:493 +#: part/views.py:517 msgid "Part Pricing" msgstr "" @@ -6156,28 +6257,48 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:29 -#: plugin/builtin/integration/core_notifications.py:31 +#: plugin/builtin/integration/core_notifications.py:33 msgid "InvenTree contributors" msgstr "" -#: plugin/builtin/integration/core_notifications.py:30 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:32 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notificaton methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:37 -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:80 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:38 -#: plugin/builtin/integration/core_notifications.py:57 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:81 msgid "Allow sending of emails for event notifications" msgstr "" +#: plugin/builtin/integration/core_notifications.py:45 +msgid "Enable slack notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:46 +msgid "Allow sending of slack channel messages for event notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:51 +msgid "Slack incoming webhook url" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:52 +msgid "URL that is used to send messages to a slack channel" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:162 +msgid "Open link" +msgstr "" + #: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" @@ -6409,6 +6530,10 @@ msgstr "" msgid "Asset file description" msgstr "" +#: report/templates/report/inventree_bill_of_materials_report.html:133 +msgid "Materials needed" +msgstr "" + #: report/templates/report/inventree_build_order_base.html:146 msgid "Required For" msgstr "" @@ -6427,7 +6552,7 @@ msgstr "" #: templates/js/translated/build.js:1244 templates/js/translated/build.js:1745 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:121 templates/js/translated/order.js:3611 -#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:522 +#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:521 msgid "Serial Number" msgstr "" @@ -6459,8 +6584,9 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: stock/admin.py:87 templates/js/translated/stock.js:642 -#: templates/js/translated/stock.js:812 templates/js/translated/stock.js:2765 +#: stock/admin.py:87 templates/js/translated/part.js:749 +#: templates/js/translated/stock.js:641 templates/js/translated/stock.js:811 +#: templates/js/translated/stock.js:2760 msgid "Serial" msgstr "" @@ -6515,13 +6641,9 @@ msgstr "" msgid "Purchase Order ID" msgstr "" -#: stock/admin.py:107 templates/js/translated/stock.js:1910 -msgid "Stocktake" -msgstr "" - #: stock/admin.py:108 stock/models.py:764 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/stock.js:1924 +#: templates/js/translated/stock.js:1919 msgid "Expiry Date" msgstr "" @@ -6936,7 +7058,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2912 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2907 msgid "Install Stock Item" msgstr "" @@ -6944,7 +7066,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1561 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1560 msgid "Add Test Result" msgstr "" @@ -7117,10 +7239,6 @@ msgstr "" msgid "Stale" msgstr "" -#: stock/templates/stock/item_base.html:445 -msgid "Last Stocktake" -msgstr "" - #: stock/templates/stock/item_base.html:449 msgid "No stocktake performed" msgstr "" @@ -7394,7 +7512,8 @@ msgstr "" #: templates/InvenTree/notifications/notifications.html:10 #: templates/InvenTree/notifications/sidebar.html:5 -#: templates/InvenTree/settings/sidebar.html:17 templates/notifications.html:5 +#: templates/InvenTree/settings/sidebar.html:17 +#: templates/InvenTree/settings/sidebar.html:35 templates/notifications.html:5 msgid "Notifications" msgstr "" @@ -7475,6 +7594,14 @@ msgstr "" msgid "Open in new tab" msgstr "" +#: templates/InvenTree/settings/notifications.html:9 +msgid "Global Notification Settings" +msgstr "" + +#: templates/InvenTree/settings/notifications.html:18 +msgid "Slug" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -7492,7 +7619,7 @@ msgid "Part Parameter Templates" msgstr "" #: templates/InvenTree/settings/plugin.html:10 -#: templates/InvenTree/settings/sidebar.html:55 +#: templates/InvenTree/settings/sidebar.html:57 msgid "Plugin Settings" msgstr "" @@ -7501,7 +7628,7 @@ msgid "Changing the settings below require you to immediately restart the server msgstr "" #: templates/InvenTree/settings/plugin.html:38 -#: templates/InvenTree/settings/sidebar.html:57 +#: templates/InvenTree/settings/sidebar.html:59 msgid "Plugins" msgstr "" @@ -7669,67 +7796,67 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:117 +#: templates/InvenTree/settings/settings.html:118 msgid "Edit Plugin Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:119 +#: templates/InvenTree/settings/settings.html:120 msgid "Edit Notification Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:122 +#: templates/InvenTree/settings/settings.html:123 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:124 +#: templates/InvenTree/settings/settings.html:125 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:214 +#: templates/InvenTree/settings/settings.html:215 msgid "No category parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:236 -#: templates/InvenTree/settings/settings.html:361 -msgid "Edit Template" -msgstr "" - #: templates/InvenTree/settings/settings.html:237 #: templates/InvenTree/settings/settings.html:362 +msgid "Edit Template" +msgstr "" + +#: templates/InvenTree/settings/settings.html:238 +#: templates/InvenTree/settings/settings.html:363 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:277 +#: templates/InvenTree/settings/settings.html:278 msgid "Create Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:322 +#: templates/InvenTree/settings/settings.html:323 msgid "Delete Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:334 +#: templates/InvenTree/settings/settings.html:335 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:338 +#: templates/InvenTree/settings/settings.html:339 #: templates/js/translated/news.js:29 #: templates/js/translated/notification.js:36 msgid "ID" msgstr "" -#: templates/InvenTree/settings/settings.html:380 +#: templates/InvenTree/settings/settings.html:381 msgid "Create Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:399 +#: templates/InvenTree/settings/settings.html:400 msgid "Edit Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:413 +#: templates/InvenTree/settings/settings.html:414 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/InvenTree/settings/settings.html:421 +#: templates/InvenTree/settings/settings.html:422 msgid "Delete Part Parameter Template" msgstr "" @@ -7758,12 +7885,12 @@ msgid "Search Settings" msgstr "" #: templates/InvenTree/settings/sidebar.html:19 -#: templates/InvenTree/settings/sidebar.html:37 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Label Printing" msgstr "" #: templates/InvenTree/settings/sidebar.html:21 -#: templates/InvenTree/settings/sidebar.html:39 +#: templates/InvenTree/settings/sidebar.html:41 msgid "Reporting" msgstr "" @@ -7775,7 +7902,7 @@ msgstr "" msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:43 +#: templates/InvenTree/settings/sidebar.html:45 msgid "Categories" msgstr "" @@ -7945,64 +8072,64 @@ msgstr "" msgid "Do you really want to remove the selected email address?" msgstr "" -#: templates/InvenTree/settings/user_display.html:28 +#: templates/InvenTree/settings/user_display.html:29 msgid "Theme Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:38 +#: templates/InvenTree/settings/user_display.html:39 msgid "Select theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:49 +#: templates/InvenTree/settings/user_display.html:50 msgid "Set Theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:57 +#: templates/InvenTree/settings/user_display.html:58 msgid "Language Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:66 +#: templates/InvenTree/settings/user_display.html:67 msgid "Select language" msgstr "" -#: templates/InvenTree/settings/user_display.html:82 +#: templates/InvenTree/settings/user_display.html:83 #, python-format msgid "%(lang_translated)s%% translated" msgstr "" -#: templates/InvenTree/settings/user_display.html:84 +#: templates/InvenTree/settings/user_display.html:85 msgid "No translations available" msgstr "" -#: templates/InvenTree/settings/user_display.html:91 +#: templates/InvenTree/settings/user_display.html:92 msgid "Set Language" msgstr "" -#: templates/InvenTree/settings/user_display.html:94 +#: templates/InvenTree/settings/user_display.html:95 msgid "Some languages are not complete" msgstr "" -#: templates/InvenTree/settings/user_display.html:96 +#: templates/InvenTree/settings/user_display.html:97 msgid "Show only sufficent" msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "and hidden." msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "Show them too" msgstr "" -#: templates/InvenTree/settings/user_display.html:105 +#: templates/InvenTree/settings/user_display.html:106 msgid "Help the translation efforts!" msgstr "" -#: templates/InvenTree/settings/user_display.html:106 +#: templates/InvenTree/settings/user_display.html:107 msgid "Native language translation of the web application is community contributed via crowdin. Contributions are welcomed and encouraged." msgstr "" -#: templates/InvenTree/settings/user_display.html:107 +#: templates/InvenTree/settings/user_display.html:108 msgid "InvenTree Translation Project" msgstr "" @@ -8080,7 +8207,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:646 +#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:649 msgid "Confirm" msgstr "" @@ -8313,7 +8440,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 -#: templates/js/translated/part.js:2445 +#: templates/js/translated/part.js:2726 msgid "Minimum Quantity" msgstr "" @@ -8466,7 +8593,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1089 +#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1088 msgid "Remove stock item" msgstr "" @@ -8548,16 +8675,6 @@ msgstr "" msgid "Download BOM Template" msgstr "" -#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 -#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 -msgid "Format" -msgstr "" - -#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 -#: templates/js/translated/order.js:999 -msgid "Select file format" -msgstr "" - #: templates/js/translated/bom.js:320 msgid "Multi Level BOM" msgstr "" @@ -8688,7 +8805,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:1145 templates/js/translated/build.js:1923 -#: templates/js/translated/part.js:790 templates/js/translated/part.js:1572 +#: templates/js/translated/part.js:1061 templates/js/translated/part.js:1843 msgid "Includes variant stock" msgstr "" @@ -8773,13 +8890,13 @@ msgstr "" msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:317 templates/js/translated/stock.js:95 -#: templates/js/translated/stock.js:237 +#: templates/js/translated/build.js:317 templates/js/translated/stock.js:94 +#: templates/js/translated/stock.js:236 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:319 templates/js/translated/stock.js:97 -#: templates/js/translated/stock.js:239 +#: templates/js/translated/build.js:319 templates/js/translated/stock.js:96 +#: templates/js/translated/stock.js:238 msgid "Latest serial number" msgstr "" @@ -8987,9 +9104,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1466 -#: templates/js/translated/part.js:2003 templates/js/translated/stock.js:1725 -#: templates/js/translated/stock.js:2428 +#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1737 +#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1724 +#: templates/js/translated/stock.js:2423 msgid "Select" msgstr "" @@ -9001,7 +9118,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2695 +#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2690 msgid "No user information" msgstr "" @@ -9074,34 +9191,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:652 -#: templates/js/translated/company.js:913 templates/js/translated/part.js:661 -#: templates/js/translated/part.js:747 +#: templates/js/translated/company.js:913 templates/js/translated/part.js:664 +#: templates/js/translated/part.js:1018 msgid "Template part" msgstr "" #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:917 templates/js/translated/part.js:665 -#: templates/js/translated/part.js:751 +#: templates/js/translated/company.js:917 templates/js/translated/part.js:668 +#: templates/js/translated/part.js:1022 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:784 templates/js/translated/part.js:870 +#: templates/js/translated/company.js:784 templates/js/translated/part.js:1141 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:821 templates/js/translated/part.js:912 +#: templates/js/translated/company.js:821 templates/js/translated/part.js:1183 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:822 templates/js/translated/part.js:913 +#: templates/js/translated/company.js:822 templates/js/translated/part.js:1184 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:841 templates/js/translated/part.js:930 +#: templates/js/translated/company.js:841 templates/js/translated/part.js:1201 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:852 templates/js/translated/part.js:942 +#: templates/js/translated/company.js:852 templates/js/translated/part.js:1213 msgid "Delete Parameter" msgstr "" @@ -9181,61 +9298,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:369 templates/js/translated/forms.js:384 -#: templates/js/translated/forms.js:398 templates/js/translated/forms.js:412 +#: templates/js/translated/forms.js:372 templates/js/translated/forms.js:387 +#: templates/js/translated/forms.js:401 templates/js/translated/forms.js:415 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:371 +#: templates/js/translated/forms.js:374 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:386 +#: templates/js/translated/forms.js:389 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:400 +#: templates/js/translated/forms.js:403 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:414 +#: templates/js/translated/forms.js:417 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:672 +#: templates/js/translated/forms.js:675 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:773 +#: templates/js/translated/forms.js:776 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1266 templates/modals.html:19 +#: templates/js/translated/forms.js:1269 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1703 +#: templates/js/translated/forms.js:1706 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1919 templates/search.html:29 +#: templates/js/translated/forms.js:1922 templates/search.html:29 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2172 +#: templates/js/translated/forms.js:2175 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:2640 +#: templates/js/translated/forms.js:2643 msgid "Select Columns" msgstr "" @@ -9256,7 +9373,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1113 +#: templates/js/translated/stock.js:1112 msgid "Select Stock Items" msgstr "" @@ -9590,7 +9707,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2184 +#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2179 msgid "Stock Status" msgstr "" @@ -9614,7 +9731,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1982 templates/js/translated/part.js:983 +#: templates/js/translated/order.js:1982 templates/js/translated/part.js:1254 msgid "No purchase orders found" msgstr "" @@ -9647,8 +9764,8 @@ msgstr "" msgid "Total" msgstr "" -#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1085 -#: templates/js/translated/part.js:1137 +#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1356 +#: templates/js/translated/part.js:1408 msgid "Total Quantity" msgstr "" @@ -9666,11 +9783,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2388 templates/js/translated/order.js:3900 -#: templates/js/translated/part.js:1121 +#: templates/js/translated/part.js:1392 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1166 +#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1437 msgid "Receive line item" msgstr "" @@ -9791,7 +9908,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3623 templates/js/translated/order.js:3712 -#: templates/js/translated/stock.js:1641 +#: templates/js/translated/stock.js:1640 msgid "Shipped to customer" msgstr "" @@ -9835,334 +9952,358 @@ msgstr "" msgid "No matching lines" msgstr "" -#: templates/js/translated/part.js:52 +#: templates/js/translated/part.js:55 msgid "Part Attributes" msgstr "" -#: templates/js/translated/part.js:56 +#: templates/js/translated/part.js:59 msgid "Part Creation Options" msgstr "" -#: templates/js/translated/part.js:60 +#: templates/js/translated/part.js:63 msgid "Part Duplication Options" msgstr "" -#: templates/js/translated/part.js:64 +#: templates/js/translated/part.js:67 msgid "Supplier Options" msgstr "" -#: templates/js/translated/part.js:78 +#: templates/js/translated/part.js:81 msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:168 +#: templates/js/translated/part.js:171 msgid "Create Initial Stock" msgstr "" -#: templates/js/translated/part.js:169 +#: templates/js/translated/part.js:172 msgid "Create an initial stock item for this part" msgstr "" -#: templates/js/translated/part.js:176 +#: templates/js/translated/part.js:179 msgid "Initial Stock Quantity" msgstr "" -#: templates/js/translated/part.js:177 +#: templates/js/translated/part.js:180 msgid "Specify initial stock quantity for this part" msgstr "" -#: templates/js/translated/part.js:184 +#: templates/js/translated/part.js:187 msgid "Select destination stock location" msgstr "" -#: templates/js/translated/part.js:202 +#: templates/js/translated/part.js:205 msgid "Copy Category Parameters" msgstr "" -#: templates/js/translated/part.js:203 +#: templates/js/translated/part.js:206 msgid "Copy parameter templates from selected part category" msgstr "" -#: templates/js/translated/part.js:211 +#: templates/js/translated/part.js:214 msgid "Add Supplier Data" msgstr "" -#: templates/js/translated/part.js:212 +#: templates/js/translated/part.js:215 msgid "Create initial supplier data for this part" msgstr "" -#: templates/js/translated/part.js:268 +#: templates/js/translated/part.js:271 msgid "Copy Image" msgstr "" -#: templates/js/translated/part.js:269 +#: templates/js/translated/part.js:272 msgid "Copy image from original part" msgstr "" -#: templates/js/translated/part.js:277 +#: templates/js/translated/part.js:280 msgid "Copy bill of materials from original part" msgstr "" -#: templates/js/translated/part.js:284 +#: templates/js/translated/part.js:287 msgid "Copy Parameters" msgstr "" -#: templates/js/translated/part.js:285 +#: templates/js/translated/part.js:288 msgid "Copy parameter data from original part" msgstr "" -#: templates/js/translated/part.js:298 +#: templates/js/translated/part.js:301 msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:313 templates/js/translated/stock.js:122 +#: templates/js/translated/part.js:316 templates/js/translated/stock.js:121 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:329 +#: templates/js/translated/part.js:332 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:342 +#: templates/js/translated/part.js:345 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:347 +#: templates/js/translated/part.js:350 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:359 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:360 +#: templates/js/translated/part.js:363 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:368 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:394 +#: templates/js/translated/part.js:397 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:396 +#: templates/js/translated/part.js:399 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:407 +#: templates/js/translated/part.js:410 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:459 +#: templates/js/translated/part.js:462 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:460 +#: templates/js/translated/part.js:463 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:477 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:476 +#: templates/js/translated/part.js:479 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:477 +#: templates/js/translated/part.js:480 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:478 +#: templates/js/translated/part.js:481 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:485 +#: templates/js/translated/part.js:488 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:521 +#: templates/js/translated/part.js:524 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:523 +#: templates/js/translated/part.js:526 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:531 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:530 +#: templates/js/translated/part.js:533 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:547 +#: templates/js/translated/part.js:550 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:560 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:560 +#: templates/js/translated/part.js:563 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:585 +#: templates/js/translated/part.js:588 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1554 +#: templates/js/translated/part.js:612 templates/js/translated/part.js:1825 #: templates/js/translated/table_filters.js:488 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:622 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:653 templates/js/translated/part.js:739 +#: templates/js/translated/part.js:656 templates/js/translated/part.js:1010 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:657 templates/js/translated/part.js:743 +#: templates/js/translated/part.js:660 templates/js/translated/part.js:1014 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:669 +#: templates/js/translated/part.js:672 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:673 +#: templates/js/translated/part.js:676 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:815 +#: templates/js/translated/part.js:761 +msgid "Stock item has not been checked recently" +msgstr "" + +#: templates/js/translated/part.js:769 +msgid "Update item" +msgstr "" + +#: templates/js/translated/part.js:770 +msgid "Delete item" +msgstr "" + +#: templates/js/translated/part.js:871 +msgid "No stocktake information available" +msgstr "" + +#: templates/js/translated/part.js:910 templates/js/translated/part.js:933 +msgid "Edit Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:914 templates/js/translated/part.js:945 +msgid "Delete Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:1086 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1236 +#: templates/js/translated/part.js:1507 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1260 +#: templates/js/translated/part.js:1531 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1327 templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1598 templates/js/translated/part.js:1936 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1521 +#: templates/js/translated/part.js:1792 msgid "No category" msgstr "" -#: templates/js/translated/part.js:1552 +#: templates/js/translated/part.js:1823 msgid "No stock" msgstr "" -#: templates/js/translated/part.js:1576 +#: templates/js/translated/part.js:1847 msgid "Allocated to build orders" msgstr "" -#: templates/js/translated/part.js:1580 +#: templates/js/translated/part.js:1851 msgid "Allocated to sales orders" msgstr "" -#: templates/js/translated/part.js:1679 templates/js/translated/part.js:1922 -#: templates/js/translated/stock.js:2387 +#: templates/js/translated/part.js:1960 templates/js/translated/part.js:2203 +#: templates/js/translated/stock.js:2382 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1695 +#: templates/js/translated/part.js:1976 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1761 +#: templates/js/translated/part.js:2042 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1766 +#: templates/js/translated/part.js:2047 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1771 +#: templates/js/translated/part.js:2052 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1784 +#: templates/js/translated/part.js:2065 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1942 templates/js/translated/stock.js:2407 +#: templates/js/translated/part.js:2223 templates/js/translated/stock.js:2402 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2022 +#: templates/js/translated/part.js:2303 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2038 +#: templates/js/translated/part.js:2319 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2383 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2153 templates/js/translated/stock.js:1338 +#: templates/js/translated/part.js:2434 templates/js/translated/stock.js:1337 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2154 templates/js/translated/stock.js:1339 -#: templates/js/translated/stock.js:1599 +#: templates/js/translated/part.js:2435 templates/js/translated/stock.js:1338 +#: templates/js/translated/stock.js:1598 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2441 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2182 +#: templates/js/translated/part.js:2463 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2196 +#: templates/js/translated/part.js:2477 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2277 templates/js/translated/part.js:2278 +#: templates/js/translated/part.js:2558 templates/js/translated/part.js:2559 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2280 +#: templates/js/translated/part.js:2561 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:2286 +#: templates/js/translated/part.js:2567 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:2336 +#: templates/js/translated/part.js:2617 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2623 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:2438 +#: templates/js/translated/part.js:2719 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2454 +#: templates/js/translated/part.js:2735 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:2499 +#: templates/js/translated/part.js:2780 msgid "Minimum Stock Level" msgstr "" @@ -10290,388 +10431,388 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:74 +#: templates/js/translated/stock.js:73 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:104 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:114 +#: templates/js/translated/stock.js:113 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:148 +#: templates/js/translated/stock.js:147 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:163 +#: templates/js/translated/stock.js:162 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:177 +#: templates/js/translated/stock.js:176 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:184 +#: templates/js/translated/stock.js:183 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:193 +#: templates/js/translated/stock.js:192 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:197 +#: templates/js/translated/stock.js:196 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:201 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:256 +#: templates/js/translated/stock.js:255 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:298 +#: templates/js/translated/stock.js:297 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:304 +#: templates/js/translated/stock.js:303 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:368 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:389 +#: templates/js/translated/stock.js:388 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:405 +#: templates/js/translated/stock.js:404 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:410 +#: templates/js/translated/stock.js:409 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:431 +#: templates/js/translated/stock.js:430 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:481 +#: templates/js/translated/stock.js:480 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:494 +#: templates/js/translated/stock.js:493 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:519 +#: templates/js/translated/stock.js:518 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:523 templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:522 templates/js/translated/stock.js:523 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:540 +#: templates/js/translated/stock.js:539 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:560 +#: templates/js/translated/stock.js:559 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:568 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:692 +#: templates/js/translated/stock.js:691 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:693 +#: templates/js/translated/stock.js:692 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:770 +#: templates/js/translated/stock.js:769 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:771 +#: templates/js/translated/stock.js:770 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:773 +#: templates/js/translated/stock.js:772 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:774 +#: templates/js/translated/stock.js:773 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:863 +#: templates/js/translated/stock.js:862 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:864 +#: templates/js/translated/stock.js:863 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:958 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:959 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:966 +#: templates/js/translated/stock.js:965 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:967 +#: templates/js/translated/stock.js:966 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:971 +#: templates/js/translated/stock.js:970 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:972 +#: templates/js/translated/stock.js:971 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:976 +#: templates/js/translated/stock.js:975 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:977 users/models.py:220 +#: templates/js/translated/stock.js:976 users/models.py:221 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:981 +#: templates/js/translated/stock.js:980 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1114 +#: templates/js/translated/stock.js:1113 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1141 +#: templates/js/translated/stock.js:1140 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1277 +#: templates/js/translated/stock.js:1276 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1279 +#: templates/js/translated/stock.js:1278 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1284 +#: templates/js/translated/stock.js:1283 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1331 +#: templates/js/translated/stock.js:1330 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1334 +#: templates/js/translated/stock.js:1333 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1360 +#: templates/js/translated/stock.js:1359 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1417 +#: templates/js/translated/stock.js:1416 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1582 +#: templates/js/translated/stock.js:1581 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1604 +#: templates/js/translated/stock.js:1603 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1633 +#: templates/js/translated/stock.js:1632 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1637 +#: templates/js/translated/stock.js:1636 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1645 +#: templates/js/translated/stock.js:1644 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1651 +#: templates/js/translated/stock.js:1650 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1820 +#: templates/js/translated/stock.js:1815 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1825 +#: templates/js/translated/stock.js:1820 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1828 +#: templates/js/translated/stock.js:1823 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1831 +#: templates/js/translated/stock.js:1826 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1833 +#: templates/js/translated/stock.js:1828 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1835 +#: templates/js/translated/stock.js:1830 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1838 +#: templates/js/translated/stock.js:1833 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1837 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1844 +#: templates/js/translated/stock.js:1839 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1846 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1853 +#: templates/js/translated/stock.js:1848 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1855 +#: templates/js/translated/stock.js:1850 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1859 +#: templates/js/translated/stock.js:1854 #: templates/js/translated/table_filters.js:216 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1989 +#: templates/js/translated/stock.js:1984 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2026 +#: templates/js/translated/stock.js:2021 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2199 +#: templates/js/translated/stock.js:2194 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2213 +#: templates/js/translated/stock.js:2208 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2214 +#: templates/js/translated/stock.js:2209 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2446 +#: templates/js/translated/stock.js:2441 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2536 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2557 +#: templates/js/translated/stock.js:2552 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2579 +#: templates/js/translated/stock.js:2574 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2598 +#: templates/js/translated/stock.js:2593 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2617 +#: templates/js/translated/stock.js:2612 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2635 +#: templates/js/translated/stock.js:2630 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2658 +#: templates/js/translated/stock.js:2653 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2666 +#: templates/js/translated/stock.js:2661 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2737 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2793 templates/js/translated/stock.js:2829 +#: templates/js/translated/stock.js:2788 templates/js/translated/stock.js:2824 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2845 +#: templates/js/translated/stock.js:2840 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2866 +#: templates/js/translated/stock.js:2861 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2867 +#: templates/js/translated/stock.js:2862 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2869 +#: templates/js/translated/stock.js:2864 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2870 +#: templates/js/translated/stock.js:2865 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:2866 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2872 +#: templates/js/translated/stock.js:2867 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2885 +#: templates/js/translated/stock.js:2880 msgid "Select part to install" msgstr "" @@ -10696,7 +10837,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:92 -#: templates/js/translated/table_filters.js:516 +#: templates/js/translated/table_filters.js:520 msgid "Has Pricing" msgstr "" @@ -10912,6 +11053,10 @@ msgstr "" msgid "Purchasable" msgstr "" +#: templates/js/translated/table_filters.js:504 +msgid "Has stocktake entries" +msgstr "" + #: templates/js/translated/tables.js:70 msgid "Display calendar view" msgstr "" @@ -11206,35 +11351,35 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:207 +#: users/models.py:208 msgid "Permission set" msgstr "" -#: users/models.py:215 +#: users/models.py:216 msgid "Group" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "View" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "Permission to view items" msgstr "" -#: users/models.py:220 +#: users/models.py:221 msgid "Permission to add items" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Change" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Permissions to edit items" msgstr "" -#: users/models.py:224 +#: users/models.py:225 msgid "Permission to delete items" msgstr "" diff --git a/InvenTree/locale/en/LC_MESSAGES/django.po b/InvenTree/locale/en/LC_MESSAGES/django.po index a157439f08..bd7bcb6689 100644 --- a/InvenTree/locale/en/LC_MESSAGES/django.po +++ b/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: 2022-12-25 08:14+0000\n" +"POT-Creation-Date: 2023-01-01 11:05+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -35,7 +35,7 @@ msgstr "" #: company/templates/company/sidebar.html:25 order/models.py:943 #: order/templates/order/po_sidebar.html:11 #: order/templates/order/so_sidebar.html:17 part/admin.py:27 -#: part/templates/part/part_sidebar.html:57 +#: part/models.py:2932 part/templates/part/part_sidebar.html:62 #: report/templates/report/inventree_build_order_base.html:172 #: stock/admin.py:103 stock/models.py:2061 stock/models.py:2169 #: stock/serializers.py:321 stock/serializers.py:454 stock/serializers.py:535 @@ -45,8 +45,8 @@ msgstr "" #: templates/js/translated/company.js:1023 #: templates/js/translated/order.js:2435 templates/js/translated/order.js:2569 #: templates/js/translated/order.js:3067 templates/js/translated/order.js:4004 -#: templates/js/translated/order.js:4385 templates/js/translated/stock.js:1413 -#: templates/js/translated/stock.js:2020 +#: templates/js/translated/order.js:4385 templates/js/translated/part.js:882 +#: templates/js/translated/stock.js:1412 templates/js/translated/stock.js:2015 msgid "Notes" msgstr "" @@ -205,18 +205,18 @@ msgstr "" msgid "Select file to attach" msgstr "" -#: InvenTree/models.py:412 common/models.py:2366 company/models.py:129 +#: InvenTree/models.py:412 common/models.py:2373 company/models.py:129 #: company/models.py:281 company/models.py:516 order/models.py:85 -#: order/models.py:1282 part/admin.py:25 part/models.py:865 +#: order/models.py:1282 part/admin.py:25 part/models.py:866 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: stock/admin.py:102 templates/js/translated/company.js:692 #: templates/js/translated/company.js:1012 -#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1608 +#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1886 msgid "Link" msgstr "" -#: InvenTree/models.py:413 build/models.py:290 part/models.py:866 +#: InvenTree/models.py:413 build/models.py:290 part/models.py:867 #: stock/models.py:716 msgid "Link to external URL" msgstr "" @@ -230,12 +230,13 @@ msgstr "" msgid "File comment" msgstr "" -#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1810 -#: common/models.py:1811 common/models.py:2034 common/models.py:2035 -#: common/models.py:2296 common/models.py:2297 part/models.py:2948 -#: part/models.py:2968 plugin/models.py:264 plugin/models.py:265 +#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1817 +#: common/models.py:1818 common/models.py:2041 common/models.py:2042 +#: common/models.py:2303 common/models.py:2304 part/models.py:2940 +#: part/models.py:3026 part/models.py:3046 plugin/models.py:264 +#: plugin/models.py:265 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2689 +#: templates/js/translated/stock.js:2684 msgid "User" msgstr "" @@ -272,19 +273,20 @@ msgstr "" msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2020 -#: company/models.py:363 label/models.py:101 part/models.py:809 -#: part/models.py:3123 plugin/models.py:94 report/models.py:152 +#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2027 +#: company/models.py:363 label/models.py:101 part/models.py:810 +#: part/models.py:3201 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 +#: templates/InvenTree/settings/notifications.html:17 #: templates/InvenTree/settings/plugin.html:60 #: templates/InvenTree/settings/plugin.html:104 #: templates/InvenTree/settings/plugin_settings.html:23 -#: templates/InvenTree/settings/settings.html:344 +#: templates/InvenTree/settings/settings.html:345 #: templates/js/translated/company.js:581 #: templates/js/translated/company.js:794 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:711 templates/js/translated/part.js:880 -#: templates/js/translated/part.js:2003 templates/js/translated/stock.js:2434 +#: templates/js/translated/part.js:982 templates/js/translated/part.js:1151 +#: templates/js/translated/part.js:2291 templates/js/translated/stock.js:2429 msgid "Name" msgstr "" @@ -293,24 +295,25 @@ msgstr "" #: company/models.py:522 company/templates/company/company_base.html:72 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:108 label/models.py:108 -#: order/models.py:83 part/admin.py:141 part/admin.py:222 part/models.py:832 -#: part/models.py:3132 part/templates/part/category.html:75 +#: order/models.py:83 part/admin.py:174 part/admin.py:255 part/models.py:833 +#: part/models.py:3210 part/templates/part/category.html:75 #: part/templates/part/part_base.html:172 #: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/admin.py:25 stock/templates/stock/location.html:117 +#: templates/InvenTree/settings/notifications.html:19 #: templates/InvenTree/settings/plugin_settings.html:28 -#: templates/InvenTree/settings/settings.html:355 +#: templates/InvenTree/settings/settings.html:356 #: templates/js/translated/bom.js:592 templates/js/translated/bom.js:895 #: templates/js/translated/build.js:2596 templates/js/translated/company.js:445 #: templates/js/translated/company.js:703 #: templates/js/translated/company.js:987 templates/js/translated/order.js:2030 #: templates/js/translated/order.js:2267 templates/js/translated/order.js:2845 -#: templates/js/translated/part.js:773 templates/js/translated/part.js:1223 -#: templates/js/translated/part.js:1490 templates/js/translated/part.js:2039 -#: templates/js/translated/part.js:2114 templates/js/translated/stock.js:1787 -#: templates/js/translated/stock.js:2466 templates/js/translated/stock.js:2526 +#: templates/js/translated/part.js:1044 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1768 templates/js/translated/part.js:2327 +#: templates/js/translated/part.js:2402 templates/js/translated/stock.js:1782 +#: templates/js/translated/stock.js:2461 templates/js/translated/stock.js:2521 msgid "Description" msgstr "" @@ -323,7 +326,7 @@ msgid "parent" msgstr "" #: InvenTree/models.py:580 InvenTree/models.py:581 -#: templates/js/translated/part.js:2048 templates/js/translated/stock.js:2475 +#: templates/js/translated/part.js:2336 templates/js/translated/stock.js:2470 msgid "Path" msgstr "" @@ -355,7 +358,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:58 part/models.py:3468 +#: InvenTree/serializers.py:58 part/models.py:3546 msgid "Must be a valid number" msgstr "" @@ -422,107 +425,107 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:639 +#: InvenTree/settings.py:642 msgid "Czech" msgstr "" -#: InvenTree/settings.py:640 +#: InvenTree/settings.py:643 msgid "Danish" msgstr "" -#: InvenTree/settings.py:641 +#: InvenTree/settings.py:644 msgid "German" msgstr "" -#: InvenTree/settings.py:642 +#: InvenTree/settings.py:645 msgid "Greek" msgstr "" -#: InvenTree/settings.py:643 +#: InvenTree/settings.py:646 msgid "English" msgstr "" -#: InvenTree/settings.py:644 +#: InvenTree/settings.py:647 msgid "Spanish" msgstr "" -#: InvenTree/settings.py:645 +#: InvenTree/settings.py:648 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:646 +#: InvenTree/settings.py:649 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:647 +#: InvenTree/settings.py:650 msgid "French" msgstr "" -#: InvenTree/settings.py:648 +#: InvenTree/settings.py:651 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:649 +#: InvenTree/settings.py:652 msgid "Hungarian" msgstr "" -#: InvenTree/settings.py:650 +#: InvenTree/settings.py:653 msgid "Italian" msgstr "" -#: InvenTree/settings.py:651 +#: InvenTree/settings.py:654 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:652 +#: InvenTree/settings.py:655 msgid "Korean" msgstr "" -#: InvenTree/settings.py:653 +#: InvenTree/settings.py:656 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:654 +#: InvenTree/settings.py:657 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:655 +#: InvenTree/settings.py:658 msgid "Polish" msgstr "" -#: InvenTree/settings.py:656 +#: InvenTree/settings.py:659 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:657 +#: InvenTree/settings.py:660 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:658 +#: InvenTree/settings.py:661 msgid "Russian" msgstr "" -#: InvenTree/settings.py:659 +#: InvenTree/settings.py:662 msgid "Slovenian" msgstr "" -#: InvenTree/settings.py:660 +#: InvenTree/settings.py:663 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:661 +#: InvenTree/settings.py:664 msgid "Thai" msgstr "" -#: InvenTree/settings.py:662 +#: InvenTree/settings.py:665 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:663 +#: InvenTree/settings.py:666 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:664 +#: InvenTree/settings.py:667 msgid "Chinese" msgstr "" @@ -653,7 +656,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2124 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2119 msgid "Merged stock items" msgstr "" @@ -757,7 +760,7 @@ msgstr "" #: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:141 -#: templates/InvenTree/settings/sidebar.html:47 +#: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:254 users/models.py:41 msgid "Build Orders" msgstr "" @@ -767,8 +770,9 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:155 order/models.py:241 order/models.py:651 -#: order/models.py:941 part/admin.py:224 part/models.py:3378 +#: order/models.py:941 part/admin.py:257 part/models.py:3456 #: part/templates/part/upload_bom.html:54 +#: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 #: templates/js/translated/bom.js:729 templates/js/translated/bom.js:905 @@ -794,13 +798,15 @@ msgstr "" #: build/models.py:180 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:684 #: order/models.py:1038 order/models.py:1149 order/models.py:1150 -#: part/models.py:381 part/models.py:2781 part/models.py:2894 -#: part/models.py:2909 part/models.py:2928 part/models.py:2946 -#: part/models.py:3045 part/models.py:3166 part/models.py:3258 -#: part/models.py:3343 part/models.py:3659 part/serializers.py:853 -#: part/templates/part/part_app_base.html:8 +#: part/models.py:382 part/models.py:2799 part/models.py:2912 +#: part/models.py:2972 part/models.py:2987 part/models.py:3006 +#: part/models.py:3024 part/models.py:3123 part/models.py:3244 +#: part/models.py:3336 part/models.py:3421 part/models.py:3737 +#: part/serializers.py:894 part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 +#: report/templates/report/inventree_bill_of_materials_report.html:110 +#: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_base.html:109 #: report/templates/report/inventree_po_report.html:89 #: report/templates/report/inventree_so_report.html:90 stock/serializers.py:90 @@ -820,12 +826,12 @@ msgstr "" #: templates/js/translated/order.js:1172 templates/js/translated/order.js:1676 #: templates/js/translated/order.js:2252 templates/js/translated/order.js:3199 #: templates/js/translated/order.js:3595 templates/js/translated/order.js:3825 -#: templates/js/translated/part.js:1208 templates/js/translated/part.js:1280 -#: templates/js/translated/part.js:1467 templates/js/translated/pricing.js:102 -#: templates/js/translated/stock.js:618 templates/js/translated/stock.js:783 -#: templates/js/translated/stock.js:993 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2552 templates/js/translated/stock.js:2747 -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/part.js:1479 templates/js/translated/part.js:1551 +#: templates/js/translated/part.js:1745 templates/js/translated/pricing.js:102 +#: templates/js/translated/stock.js:617 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:992 templates/js/translated/stock.js:1738 +#: templates/js/translated/stock.js:2547 templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2879 msgid "Part" msgstr "" @@ -891,7 +897,7 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:252 order/models.py:87 part/models.py:1001 +#: build/models.py:252 order/models.py:87 part/models.py:1002 #: part/templates/part/part_base.html:318 templates/js/translated/order.js:2858 msgid "Creation Date" msgstr "" @@ -924,7 +930,7 @@ msgstr "" #: build/models.py:283 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:101 #: order/templates/order/order_base.html:185 -#: order/templates/order/sales_order_base.html:183 part/models.py:1005 +#: order/templates/order/sales_order_base.html:183 part/models.py:1006 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2658 templates/js/translated/order.js:2064 msgid "Responsible" @@ -937,7 +943,7 @@ msgstr "" #: build/models.py:289 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:188 -#: part/templates/part/part_base.html:376 stock/models.py:714 +#: part/templates/part/part_base.html:390 stock/models.py:714 #: stock/templates/stock/item_base.html:203 msgid "External Link" msgstr "" @@ -1012,8 +1018,8 @@ msgstr "" #: templates/js/translated/order.js:107 templates/js/translated/order.js:3200 #: templates/js/translated/order.js:3502 templates/js/translated/order.js:3507 #: templates/js/translated/order.js:3602 templates/js/translated/order.js:3694 -#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 -#: templates/js/translated/stock.js:2625 +#: templates/js/translated/part.js:803 templates/js/translated/stock.js:618 +#: templates/js/translated/stock.js:783 templates/js/translated/stock.js:2620 msgid "Stock Item" msgstr "" @@ -1023,12 +1029,13 @@ msgstr "" #: build/models.py:1364 build/serializers.py:192 #: build/templates/build/build_base.html:85 -#: build/templates/build/detail.html:34 common/models.py:1842 +#: build/templates/build/detail.html:34 common/models.py:1849 #: order/models.py:934 order/models.py:1460 order/serializers.py:1206 -#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:223 -#: part/forms.py:40 part/models.py:3359 +#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:256 +#: part/forms.py:40 part/models.py:2919 part/models.py:3437 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 +#: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_base.html:113 #: report/templates/report/inventree_po_report.html:90 #: report/templates/report/inventree_so_report.html:91 @@ -1050,13 +1057,14 @@ msgstr "" #: templates/js/translated/order.js:3201 templates/js/translated/order.js:3521 #: templates/js/translated/order.js:3608 templates/js/translated/order.js:3700 #: templates/js/translated/order.js:3847 templates/js/translated/order.js:4338 -#: templates/js/translated/part.js:1078 templates/js/translated/part.js:2561 +#: templates/js/translated/part.js:805 templates/js/translated/part.js:876 +#: templates/js/translated/part.js:1349 templates/js/translated/part.js:2849 #: templates/js/translated/pricing.js:114 #: templates/js/translated/pricing.js:207 #: templates/js/translated/pricing.js:255 -#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:490 -#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:814 -#: templates/js/translated/stock.js:2674 templates/js/translated/stock.js:2759 +#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:489 +#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:813 +#: templates/js/translated/stock.js:2669 templates/js/translated/stock.js:2754 msgid "Quantity" msgstr "" @@ -1098,8 +1106,8 @@ msgid "Enter quantity for build output" msgstr "" #: build/serializers.py:207 build/serializers.py:683 order/models.py:327 -#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:645 -#: part/serializers.py:1016 stock/models.py:574 stock/models.py:1312 +#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:686 +#: part/serializers.py:1057 stock/models.py:574 stock/models.py:1312 #: stock/serializers.py:294 msgid "Quantity must be greater than zero" msgstr "" @@ -1114,7 +1122,7 @@ msgstr "" #: build/serializers.py:231 order/serializers.py:463 order/serializers.py:1210 #: stock/serializers.py:303 templates/js/translated/order.js:1545 -#: templates/js/translated/stock.js:303 templates/js/translated/stock.js:491 +#: templates/js/translated/stock.js:302 templates/js/translated/stock.js:490 msgid "Serial Numbers" msgstr "" @@ -1147,9 +1155,10 @@ msgstr "" #: templates/js/translated/build.js:1759 templates/js/translated/order.js:1572 #: templates/js/translated/order.js:3514 templates/js/translated/order.js:3619 #: templates/js/translated/order.js:3627 templates/js/translated/order.js:3708 -#: templates/js/translated/part.js:183 templates/js/translated/stock.js:620 -#: templates/js/translated/stock.js:785 templates/js/translated/stock.js:995 -#: templates/js/translated/stock.js:1895 templates/js/translated/stock.js:2566 +#: templates/js/translated/part.js:186 templates/js/translated/part.js:804 +#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 +#: templates/js/translated/stock.js:994 templates/js/translated/stock.js:1890 +#: templates/js/translated/stock.js:2561 msgid "Location" msgstr "" @@ -1163,8 +1172,8 @@ msgstr "" #: stock/templates/stock/item_base.html:421 #: templates/js/translated/barcode.js:237 templates/js/translated/build.js:2630 #: templates/js/translated/order.js:1681 templates/js/translated/order.js:2034 -#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1870 -#: templates/js/translated/stock.js:2643 templates/js/translated/stock.js:2775 +#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:2638 templates/js/translated/stock.js:2770 msgid "Status" msgstr "" @@ -1240,8 +1249,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:595 build/serializers.py:640 part/models.py:3495 -#: part/models.py:3651 +#: build/serializers.py:595 build/serializers.py:640 part/models.py:3573 +#: part/models.py:3729 msgid "BOM Item" msgstr "" @@ -1407,7 +1416,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2670 templates/js/translated/order.js:2051 #: templates/js/translated/order.js:2382 templates/js/translated/order.js:2866 -#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1093 +#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1364 msgid "Target Date" msgstr "" @@ -1485,8 +1494,8 @@ msgstr "" #: stock/templates/stock/item_base.html:168 #: templates/js/translated/build.js:1250 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:1884 -#: templates/js/translated/stock.js:2782 +#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:1879 +#: templates/js/translated/stock.js:2777 #: templates/js/translated/table_filters.js:179 #: templates/js/translated/table_filters.js:270 msgid "Batch" @@ -1618,8 +1627,8 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:86 #: order/templates/order/sales_order_detail.html:140 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:210 -#: part/templates/part/part_sidebar.html:55 stock/templates/stock/item.html:117 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:233 +#: part/templates/part/part_sidebar.html:60 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" msgstr "" @@ -1636,7 +1645,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:316 +#: build/templates/build/index.html:18 part/templates/part/detail.html:339 msgid "New Build Order" msgstr "" @@ -1929,9 +1938,9 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1014 part/admin.py:41 part/models.py:3168 +#: common/models.py:1014 part/admin.py:41 part/models.py:3246 #: report/models.py:158 templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:504 +#: templates/js/translated/table_filters.js:508 msgid "Template" msgstr "" @@ -1939,7 +1948,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:1021 part/admin.py:37 part/admin.py:229 part/models.py:957 +#: common/models.py:1021 part/admin.py:37 part/admin.py:262 part/models.py:958 #: templates/js/translated/bom.js:1595 #: templates/js/translated/table_filters.js:196 #: templates/js/translated/table_filters.js:467 @@ -1950,7 +1959,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1028 part/admin.py:38 part/models.py:963 +#: common/models.py:1028 part/admin.py:38 part/models.py:964 #: templates/js/translated/table_filters.js:475 msgid "Component" msgstr "" @@ -1959,7 +1968,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1035 part/admin.py:39 part/models.py:974 +#: common/models.py:1035 part/admin.py:39 part/models.py:975 msgid "Purchaseable" msgstr "" @@ -1967,7 +1976,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1042 part/admin.py:40 part/models.py:979 +#: common/models.py:1042 part/admin.py:40 part/models.py:980 #: templates/js/translated/table_filters.js:496 msgid "Salable" msgstr "" @@ -1976,10 +1985,10 @@ msgstr "" msgid "Parts are salable by default" msgstr "" -#: common/models.py:1049 part/admin.py:42 part/models.py:969 +#: common/models.py:1049 part/admin.py:42 part/models.py:970 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:120 -#: templates/js/translated/table_filters.js:508 +#: templates/js/translated/table_filters.js:512 msgid "Trackable" msgstr "" @@ -1987,10 +1996,10 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1056 part/admin.py:43 part/models.py:989 +#: common/models.py:1056 part/admin.py:43 part/models.py:990 #: part/templates/part/part_base.html:156 #: templates/js/translated/table_filters.js:42 -#: templates/js/translated/table_filters.js:512 +#: templates/js/translated/table_filters.js:516 msgid "Virtual" msgstr "" @@ -2418,7 +2427,7 @@ msgstr "" msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1461 common/models.py:1803 +#: common/models.py:1461 common/models.py:1810 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -2750,41 +2759,50 @@ msgstr "" msgid "Display part scheduling information" msgstr "" -#: common/models.py:1778 -msgid "Table String Length" +#: common/models.py:1778 part/templates/part/detail.html:61 +#: templates/js/translated/part.js:822 +msgid "Part Stocktake" msgstr "" #: common/models.py:1779 +msgid "Display part stocktake information" +msgstr "" + +#: common/models.py:1785 +msgid "Table String Length" +msgstr "" + +#: common/models.py:1786 msgid "Maximimum length limit for strings displayed in table views" msgstr "" -#: common/models.py:1843 +#: common/models.py:1850 msgid "Price break quantity" msgstr "" -#: common/models.py:1850 company/serializers.py:393 order/models.py:975 -#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1145 +#: common/models.py:1857 company/serializers.py:393 order/models.py:975 +#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1416 #: templates/js/translated/pricing.js:354 msgid "Price" msgstr "" -#: common/models.py:1851 +#: common/models.py:1858 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2011 common/models.py:2189 +#: common/models.py:2018 common/models.py:2196 msgid "Endpoint" msgstr "" -#: common/models.py:2012 +#: common/models.py:2019 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2021 +#: common/models.py:2028 msgid "Name for this webhook" msgstr "" -#: common/models.py:2026 part/admin.py:36 part/models.py:984 +#: common/models.py:2033 part/admin.py:36 part/models.py:985 #: plugin/models.py:100 templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:116 #: templates/js/translated/table_filters.js:336 @@ -2792,131 +2810,133 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:2027 +#: common/models.py:2034 msgid "Is this webhook active" msgstr "" -#: common/models.py:2041 +#: common/models.py:2048 msgid "Token" msgstr "" -#: common/models.py:2042 +#: common/models.py:2049 msgid "Token for access" msgstr "" -#: common/models.py:2049 +#: common/models.py:2056 msgid "Secret" msgstr "" -#: common/models.py:2050 +#: common/models.py:2057 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2156 +#: common/models.py:2163 msgid "Message ID" msgstr "" -#: common/models.py:2157 +#: common/models.py:2164 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2165 +#: common/models.py:2172 msgid "Host" msgstr "" -#: common/models.py:2166 +#: common/models.py:2173 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2173 +#: common/models.py:2180 msgid "Header" msgstr "" -#: common/models.py:2174 +#: common/models.py:2181 msgid "Header of this message" msgstr "" -#: common/models.py:2180 +#: common/models.py:2187 msgid "Body" msgstr "" -#: common/models.py:2181 +#: common/models.py:2188 msgid "Body of this message" msgstr "" -#: common/models.py:2190 +#: common/models.py:2197 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2195 +#: common/models.py:2202 msgid "Worked on" msgstr "" -#: common/models.py:2196 +#: common/models.py:2203 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2355 +#: common/models.py:2362 msgid "Id" msgstr "" -#: common/models.py:2361 templates/js/translated/news.js:35 +#: common/models.py:2368 templates/js/translated/news.js:35 msgid "Title" msgstr "" -#: common/models.py:2371 templates/js/translated/news.js:51 +#: common/models.py:2378 templates/js/translated/news.js:51 msgid "Published" msgstr "" -#: common/models.py:2376 templates/InvenTree/settings/plugin.html:62 +#: common/models.py:2383 templates/InvenTree/settings/plugin.html:62 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/news.js:47 msgid "Author" msgstr "" -#: common/models.py:2381 templates/js/translated/news.js:43 +#: common/models.py:2388 templates/js/translated/news.js:43 msgid "Summary" msgstr "" -#: common/models.py:2386 +#: common/models.py:2393 msgid "Read" msgstr "" -#: common/models.py:2387 +#: common/models.py:2394 msgid "Was this news item read?" msgstr "" -#: common/notifications.py:293 +#: common/notifications.py:294 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:295 +#: common/notifications.py:296 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:301 +#: common/notifications.py:302 msgid "Items Received" msgstr "" -#: common/notifications.py:303 +#: common/notifications.py:304 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:415 +#: common/notifications.py:416 msgid "Error raised by plugin" msgstr "" #: common/views.py:85 order/templates/order/order_wizard/po_upload.html:51 #: order/templates/order/purchase_order_detail.html:25 order/views.py:102 -#: part/views.py:107 templates/patterns/wizard/upload.html:37 +#: part/templates/part/import_wizard/part_upload.html:58 part/views.py:109 +#: templates/patterns/wizard/upload.html:37 msgid "Upload File" msgstr "" #: common/views.py:86 order/templates/order/order_wizard/match_fields.html:52 #: order/views.py:103 #: part/templates/part/import_wizard/ajax_match_fields.html:45 -#: part/views.py:108 templates/patterns/wizard/match_fields.html:51 +#: part/templates/part/import_wizard/match_fields.html:52 part/views.py:110 +#: templates/patterns/wizard/match_fields.html:51 msgid "Match Fields" msgstr "" @@ -2935,7 +2955,9 @@ msgstr "" #: common/views.py:509 order/templates/order/order_wizard/match_fields.html:27 #: order/templates/order/order_wizard/match_parts.html:19 #: order/templates/order/order_wizard/po_upload.html:49 +#: part/templates/part/import_wizard/match_fields.html:27 #: part/templates/part/import_wizard/match_references.html:19 +#: part/templates/part/import_wizard/part_upload.html:56 #: templates/patterns/wizard/match_fields.html:26 #: templates/patterns/wizard/upload.html:35 msgid "Previous Step" @@ -2996,7 +3018,7 @@ msgstr "" msgid "Link to external company information" msgstr "" -#: company/models.py:140 part/models.py:878 +#: company/models.py:140 part/models.py:879 msgid "Image" msgstr "" @@ -3029,8 +3051,8 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:153 company/serializers.py:399 -#: company/templates/company/company_base.html:107 part/models.py:2762 -#: part/serializers.py:154 part/serializers.py:182 stock/serializers.py:182 +#: company/templates/company/company_base.html:107 part/models.py:2780 +#: part/serializers.py:156 part/serializers.py:184 stock/serializers.py:182 #: templates/InvenTree/settings/pricing.html:64 msgid "Currency" msgstr "" @@ -3056,12 +3078,12 @@ msgstr "" #: templates/js/translated/company.js:433 #: templates/js/translated/company.js:534 #: templates/js/translated/company.js:669 -#: templates/js/translated/company.js:957 templates/js/translated/part.js:238 +#: templates/js/translated/company.js:957 templates/js/translated/part.js:241 #: templates/js/translated/table_filters.js:439 msgid "Manufacturer" msgstr "" -#: company/models.py:269 templates/js/translated/part.js:239 +#: company/models.py:269 templates/js/translated/part.js:242 msgid "Select manufacturer" msgstr "" @@ -3071,11 +3093,11 @@ msgstr "" #: templates/js/translated/company.js:533 #: templates/js/translated/company.js:685 #: templates/js/translated/company.js:976 templates/js/translated/order.js:2286 -#: templates/js/translated/part.js:249 templates/js/translated/part.js:1067 +#: templates/js/translated/part.js:252 templates/js/translated/part.js:1338 msgid "MPN" msgstr "" -#: company/models.py:276 templates/js/translated/part.js:250 +#: company/models.py:276 templates/js/translated/part.js:253 msgid "Manufacturer Part Number" msgstr "" @@ -3101,8 +3123,8 @@ msgstr "" #: company/models.py:370 #: report/templates/report/inventree_test_report_base.html:95 #: stock/models.py:2156 templates/js/translated/company.js:582 -#: templates/js/translated/company.js:800 templates/js/translated/part.js:889 -#: templates/js/translated/stock.js:1399 +#: templates/js/translated/company.js:800 templates/js/translated/part.js:1160 +#: templates/js/translated/stock.js:1398 msgid "Value" msgstr "" @@ -3110,10 +3132,10 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:377 part/admin.py:26 part/models.py:951 -#: part/models.py:3128 part/templates/part/part_base.html:286 -#: templates/InvenTree/settings/settings.html:349 -#: templates/js/translated/company.js:806 templates/js/translated/part.js:895 +#: company/models.py:377 part/admin.py:26 part/models.py:952 +#: part/models.py:3206 part/templates/part/part_base.html:286 +#: templates/InvenTree/settings/settings.html:350 +#: templates/js/translated/company.js:806 templates/js/translated/part.js:1166 msgid "Units" msgstr "" @@ -3133,24 +3155,24 @@ msgstr "" #: templates/js/translated/company.js:304 #: templates/js/translated/company.js:437 #: templates/js/translated/company.js:930 templates/js/translated/order.js:2017 -#: templates/js/translated/part.js:219 templates/js/translated/part.js:1035 +#: templates/js/translated/part.js:222 templates/js/translated/part.js:1306 #: templates/js/translated/pricing.js:231 #: templates/js/translated/table_filters.js:443 msgid "Supplier" msgstr "" -#: company/models.py:498 templates/js/translated/part.js:220 +#: company/models.py:498 templates/js/translated/part.js:223 msgid "Select supplier" msgstr "" #: company/models.py:503 company/templates/company/supplier_part.html:146 #: part/bom.py:253 part/bom.py:281 templates/js/translated/company.js:303 -#: templates/js/translated/order.js:2273 templates/js/translated/part.js:230 -#: templates/js/translated/part.js:1053 templates/js/translated/pricing.js:243 +#: templates/js/translated/order.js:2273 templates/js/translated/part.js:233 +#: templates/js/translated/part.js:1324 templates/js/translated/pricing.js:243 msgid "SKU" msgstr "" -#: company/models.py:504 templates/js/translated/part.js:231 +#: company/models.py:504 templates/js/translated/part.js:234 msgid "Supplier stock keeping unit" msgstr "" @@ -3167,24 +3189,25 @@ msgid "Supplier part description" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:181 -#: part/admin.py:225 part/models.py:3381 part/templates/part/upload_bom.html:59 +#: part/admin.py:258 part/models.py:3459 part/templates/part/upload_bom.html:59 +#: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:397 msgid "Note" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "base cost" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:534 company/templates/company/supplier_part.html:167 #: stock/admin.py:101 stock/models.py:682 #: stock/templates/stock/item_base.html:243 -#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2016 +#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2011 msgid "Packaging" msgstr "" @@ -3197,7 +3220,7 @@ msgstr "" #: templates/js/translated/company.js:997 templates/js/translated/order.js:826 #: templates/js/translated/order.js:1253 templates/js/translated/order.js:1508 #: templates/js/translated/order.js:2317 templates/js/translated/order.js:2334 -#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1137 +#: templates/js/translated/part.js:1356 templates/js/translated/part.js:1408 msgid "Pack Quantity" msgstr "" @@ -3205,7 +3228,7 @@ msgstr "" msgid "Unit quantity supplied in a single pack" msgstr "" -#: company/models.py:544 part/models.py:1863 +#: company/models.py:544 part/models.py:1869 msgid "multiple" msgstr "" @@ -3217,8 +3240,8 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:1118 templates/js/translated/build.js:1883 -#: templates/js/translated/build.js:2770 templates/js/translated/part.js:623 -#: templates/js/translated/part.js:626 +#: templates/js/translated/build.js:2770 templates/js/translated/part.js:626 +#: templates/js/translated/part.js:629 #: templates/js/translated/table_filters.js:206 msgid "Available" msgstr "" @@ -3301,7 +3324,7 @@ msgstr "" #: stock/templates/stock/item_base.html:399 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:429 templates/js/translated/order.js:2827 -#: templates/js/translated/stock.js:2607 +#: templates/js/translated/stock.js:2602 #: templates/js/translated/table_filters.js:447 msgid "Customer" msgstr "" @@ -3315,7 +3338,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:206 -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:525 msgid "Remove Image" msgstr "" @@ -3324,19 +3347,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:209 -#: part/templates/part/part_base.html:514 +#: part/templates/part/part_base.html:528 #: templates/InvenTree/settings/user.html:87 #: templates/InvenTree/settings/user.html:149 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:238 -#: part/templates/part/part_base.html:543 +#: part/templates/part/part_base.html:557 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:253 -#: part/templates/part/part_base.html:598 +#: part/templates/part/part_base.html:612 msgid "Download Image" msgstr "" @@ -3352,7 +3375,7 @@ msgstr "" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:357 +#: part/templates/part/detail.html:380 msgid "New Supplier Part" msgstr "" @@ -3381,7 +3404,7 @@ msgstr "" msgid "Create new manufacturer part" msgstr "" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:387 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:410 msgid "New Manufacturer Part" msgstr "" @@ -3395,9 +3418,9 @@ msgstr "" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:35 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:35 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:200 -#: templates/InvenTree/settings/sidebar.html:49 +#: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:293 templates/navbar.html:50 #: users/models.py:42 msgid "Purchase Orders" @@ -3418,9 +3441,9 @@ msgstr "" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:39 +#: part/templates/part/detail.html:130 part/templates/part/part_sidebar.html:39 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:220 -#: templates/InvenTree/settings/sidebar.html:51 +#: templates/InvenTree/settings/sidebar.html:53 #: templates/js/translated/search.js:317 templates/navbar.html:61 #: users/models.py:43 msgid "Sales Orders" @@ -3452,7 +3475,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:221 -#: part/templates/part/detail.html:87 part/templates/part/part_base.html:85 +#: part/templates/part/detail.html:110 part/templates/part/part_base.html:85 msgid "Order part" msgstr "" @@ -3483,28 +3506,28 @@ msgid "Suppliers" msgstr "" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:368 +#: part/templates/part/detail.html:391 msgid "Delete supplier parts" msgstr "" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:369 part/templates/part/detail.html:399 -#: templates/js/translated/forms.js:455 templates/js/translated/helpers.js:38 -#: templates/js/translated/part.js:351 templates/js/translated/stock.js:188 -#: users/models.py:224 +#: part/templates/part/detail.html:392 part/templates/part/detail.html:422 +#: templates/js/translated/forms.js:458 templates/js/translated/helpers.js:38 +#: templates/js/translated/part.js:354 templates/js/translated/stock.js:187 +#: users/models.py:225 msgid "Delete" msgstr "" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:184 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:207 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:189 +#: part/templates/part/detail.html:212 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:62 msgid "New Parameter" @@ -3515,7 +3538,7 @@ msgid "Delete parameters" msgstr "" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:825 +#: part/templates/part/detail.html:865 msgid "Add Parameter" msgstr "" @@ -3539,7 +3562,7 @@ msgstr "" #: company/templates/company/supplier_part.html:24 stock/models.py:665 #: stock/templates/stock/item_base.html:236 #: templates/js/translated/company.js:946 templates/js/translated/order.js:1173 -#: templates/js/translated/stock.js:1974 +#: templates/js/translated/stock.js:1969 msgid "Supplier Part" msgstr "" @@ -3579,7 +3602,7 @@ msgstr "" #: company/templates/company/supplier_part.html:56 #: company/templates/company/supplier_part.html:57 #: company/templates/company/supplier_part.html:222 -#: part/templates/part/detail.html:88 +#: part/templates/part/detail.html:111 msgid "Order Part" msgstr "" @@ -3631,7 +3654,7 @@ msgstr "" #: company/templates/company/supplier_part.html:204 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:198 -#: templates/js/translated/stock.js:467 +#: templates/js/translated/stock.js:466 msgid "New Stock Item" msgstr "" @@ -3663,10 +3686,10 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 -#: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/part.js:777 templates/js/translated/part.js:1371 -#: templates/js/translated/part.js:1527 templates/js/translated/stock.js:994 -#: templates/js/translated/stock.js:1799 templates/navbar.html:31 +#: templates/InvenTree/settings/sidebar.html:47 +#: templates/js/translated/part.js:1048 templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1805 templates/js/translated/stock.js:993 +#: templates/js/translated/stock.js:1794 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3681,7 +3704,7 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:29 #: part/templates/part/part_sidebar.html:30 -#: templates/InvenTree/settings/sidebar.html:35 +#: templates/InvenTree/settings/sidebar.html:37 msgid "Pricing" msgstr "" @@ -3693,7 +3716,7 @@ msgstr "" #: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:155 templates/js/translated/search.js:225 -#: templates/js/translated/stock.js:2484 users/models.py:40 +#: templates/js/translated/stock.js:2479 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3802,9 +3825,9 @@ msgstr "" #: stock/templates/stock/item_base.html:182 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:619 templates/js/translated/order.js:1174 -#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1012 -#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1954 -#: templates/js/translated/stock.js:2588 +#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1283 +#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1949 +#: templates/js/translated/stock.js:2583 msgid "Purchase Order" msgstr "" @@ -3974,7 +3997,7 @@ msgstr "" #: order/models.py:1046 order/templates/order/order_base.html:178 #: templates/js/translated/order.js:1679 templates/js/translated/order.js:2404 -#: templates/js/translated/part.js:1129 templates/js/translated/part.js:1161 +#: templates/js/translated/part.js:1400 templates/js/translated/part.js:1432 #: templates/js/translated/table_filters.js:358 msgid "Received" msgstr "" @@ -3985,7 +4008,7 @@ msgstr "" #: order/models.py:1054 stock/models.py:800 stock/serializers.py:173 #: stock/templates/stock/item_base.html:189 -#: templates/js/translated/stock.js:2005 +#: templates/js/translated/stock.js:2000 msgid "Purchase Price" msgstr "" @@ -4351,18 +4374,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:9 #: part/templates/part/import_wizard/ajax_match_fields.html:9 +#: part/templates/part/import_wizard/match_fields.html:9 #: templates/patterns/wizard/match_fields.html:8 msgid "Missing selections for the following required columns" msgstr "" #: order/templates/order/order_wizard/match_fields.html:20 #: part/templates/part/import_wizard/ajax_match_fields.html:20 +#: part/templates/part/import_wizard/match_fields.html:20 #: templates/patterns/wizard/match_fields.html:19 msgid "Duplicate selections found, see below. Fix them then retry submitting." msgstr "" #: order/templates/order/order_wizard/match_fields.html:29 #: order/templates/order/order_wizard/match_parts.html:21 +#: part/templates/part/import_wizard/match_fields.html:29 #: part/templates/part/import_wizard/match_references.html:21 #: templates/patterns/wizard/match_fields.html:28 msgid "Submit Selections" @@ -4370,18 +4396,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:35 #: part/templates/part/import_wizard/ajax_match_fields.html:28 +#: part/templates/part/import_wizard/match_fields.html:35 #: templates/patterns/wizard/match_fields.html:34 msgid "File Fields" msgstr "" #: order/templates/order/order_wizard/match_fields.html:42 #: part/templates/part/import_wizard/ajax_match_fields.html:35 +#: part/templates/part/import_wizard/match_fields.html:42 #: templates/patterns/wizard/match_fields.html:41 msgid "Remove column" msgstr "" #: order/templates/order/order_wizard/match_fields.html:60 #: part/templates/part/import_wizard/ajax_match_fields.html:53 +#: part/templates/part/import_wizard/match_fields.html:60 #: templates/patterns/wizard/match_fields.html:59 msgid "Duplicate selection" msgstr "" @@ -4390,12 +4419,13 @@ msgstr "" #: order/templates/order/order_wizard/match_parts.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: 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:102 templates/js/translated/build.js:485 #: templates/js/translated/build.js:641 templates/js/translated/build.js:2088 #: templates/js/translated/order.js:1122 templates/js/translated/order.js:1624 -#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:657 -#: templates/js/translated/stock.js:825 +#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:824 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4430,6 +4460,7 @@ msgstr "" #: order/templates/order/order_wizard/po_upload.html:27 #: part/templates/part/import_wizard/ajax_part_upload.html:10 +#: part/templates/part/import_wizard/part_upload.html:26 #: templates/patterns/wizard/upload.html:13 #, python-format msgid "Step %(step)s of %(count)s" @@ -4568,12 +4599,12 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:19 part/admin.py:219 part/models.py:3262 stock/admin.py:84 +#: part/admin.py:19 part/admin.py:252 part/models.py:3340 stock/admin.py:84 #: templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/admin.py:20 part/admin.py:221 part/models.py:3266 stock/admin.py:85 +#: part/admin.py:20 part/admin.py:254 part/models.py:3344 stock/admin.py:85 msgid "Part Name" msgstr "" @@ -4581,32 +4612,32 @@ msgstr "" msgid "Part Description" msgstr "" -#: part/admin.py:22 part/models.py:852 part/templates/part/part_base.html:272 -#: templates/js/translated/part.js:763 templates/js/translated/part.js:1484 -#: templates/js/translated/stock.js:1765 +#: part/admin.py:22 part/models.py:853 part/templates/part/part_base.html:272 +#: templates/js/translated/part.js:1034 templates/js/translated/part.js:1762 +#: templates/js/translated/stock.js:1760 msgid "IPN" msgstr "" -#: part/admin.py:23 part/models.py:860 part/templates/part/part_base.html:279 -#: report/models.py:171 templates/js/translated/part.js:768 +#: part/admin.py:23 part/models.py:861 part/templates/part/part_base.html:279 +#: report/models.py:171 templates/js/translated/part.js:1039 msgid "Revision" msgstr "" -#: part/admin.py:24 part/admin.py:145 part/models.py:838 +#: part/admin.py:24 part/admin.py:178 part/models.py:839 #: part/templates/part/category.html:87 part/templates/part/part_base.html:300 msgid "Keywords" msgstr "" -#: part/admin.py:28 part/admin.py:139 +#: part/admin.py:28 part/admin.py:172 #: templates/js/translated/model_renderers.js:338 msgid "Category ID" msgstr "" -#: part/admin.py:29 part/admin.py:140 +#: part/admin.py:29 part/admin.py:173 msgid "Category Name" msgstr "" -#: part/admin.py:30 part/admin.py:144 +#: part/admin.py:30 part/admin.py:177 msgid "Default Location ID" msgstr "" @@ -4614,7 +4645,7 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:33 part/models.py:944 part/templates/part/part_base.html:206 +#: part/admin.py:33 part/models.py:945 part/templates/part/part_base.html:206 msgid "Minimum Stock" msgstr "" @@ -4626,8 +4657,8 @@ msgstr "" #: part/admin.py:48 part/bom.py:145 part/templates/part/part_base.html:213 #: templates/js/translated/bom.js:1156 templates/js/translated/build.js:1935 -#: templates/js/translated/part.js:613 templates/js/translated/part.js:633 -#: templates/js/translated/part.js:1374 templates/js/translated/part.js:1552 +#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 +#: templates/js/translated/part.js:1652 templates/js/translated/part.js:1830 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4643,115 +4674,115 @@ msgid "Allocated" msgstr "" #: part/admin.py:51 part/templates/part/part_base.html:244 -#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 -#: templates/js/translated/part.js:1378 templates/js/translated/part.js:1559 +#: templates/js/translated/part.js:619 templates/js/translated/part.js:639 +#: templates/js/translated/part.js:1656 templates/js/translated/part.js:1837 msgid "Building" msgstr "" -#: part/admin.py:52 part/models.py:2846 +#: part/admin.py:52 part/models.py:2864 msgid "Minimum Cost" msgstr "" -#: part/admin.py:53 part/models.py:2852 +#: part/admin.py:53 part/models.py:2870 msgid "Maximum Cost" msgstr "" -#: part/admin.py:142 part/admin.py:216 stock/admin.py:26 stock/admin.py:98 +#: part/admin.py:175 part/admin.py:249 stock/admin.py:26 stock/admin.py:98 msgid "Parent ID" msgstr "" -#: part/admin.py:143 part/admin.py:218 stock/admin.py:27 +#: part/admin.py:176 part/admin.py:251 stock/admin.py:27 msgid "Parent Name" msgstr "" -#: part/admin.py:146 part/templates/part/category.html:81 +#: part/admin.py:179 part/templates/part/category.html:81 #: part/templates/part/category.html:94 msgid "Category Path" msgstr "" -#: part/admin.py:149 part/models.py:382 part/templates/part/cat_link.html:3 +#: part/admin.py:182 part/models.py:383 part/templates/part/cat_link.html:3 #: part/templates/part/category.html:23 part/templates/part/category.html:134 #: part/templates/part/category.html:154 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:84 -#: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:2058 templates/js/translated/search.js:146 +#: templates/InvenTree/settings/sidebar.html:43 +#: templates/js/translated/part.js:2346 templates/js/translated/search.js:146 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" -#: part/admin.py:211 +#: part/admin.py:244 msgid "BOM Level" msgstr "" -#: part/admin.py:213 +#: part/admin.py:246 msgid "BOM Item ID" msgstr "" -#: part/admin.py:217 +#: part/admin.py:250 msgid "Parent IPN" msgstr "" -#: part/admin.py:220 part/models.py:3270 +#: part/admin.py:253 part/models.py:3348 msgid "Part IPN" msgstr "" -#: part/admin.py:226 templates/js/translated/pricing.js:91 +#: part/admin.py:259 templates/js/translated/pricing.js:91 #: templates/js/translated/pricing.js:732 msgid "Minimum Price" msgstr "" -#: part/admin.py:227 templates/js/translated/pricing.js:86 +#: part/admin.py:260 templates/js/translated/pricing.js:86 #: templates/js/translated/pricing.js:740 msgid "Maximum Price" msgstr "" -#: part/api.py:536 +#: part/api.py:538 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:556 +#: part/api.py:558 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:574 +#: part/api.py:576 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:660 +#: part/api.py:662 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:818 +#: part/api.py:820 msgid "Valid" msgstr "" -#: part/api.py:819 +#: part/api.py:821 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:825 +#: part/api.py:827 msgid "This option must be selected" msgstr "" -#: part/api.py:1265 +#: part/api.py:1281 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1269 +#: part/api.py:1285 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1284 +#: part/api.py:1300 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1315 part/api.py:1319 part/api.py:1334 part/api.py:1338 +#: part/api.py:1331 part/api.py:1335 part/api.py:1350 part/api.py:1354 msgid "This field is required" msgstr "" -#: part/bom.py:142 part/models.py:116 part/models.py:887 -#: part/templates/part/category.html:109 part/templates/part/part_base.html:360 +#: part/bom.py:142 part/models.py:116 part/models.py:888 +#: part/templates/part/category.html:109 part/templates/part/part_base.html:374 msgid "Default Location" msgstr "" @@ -4802,7 +4833,7 @@ msgstr "" msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:159 part/models.py:3211 part/templates/part/category.html:16 +#: part/models.py:159 part/models.py:3289 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -4813,423 +4844,459 @@ msgstr "" msgid "Part Categories" msgstr "" -#: part/models.py:468 +#: part/models.py:469 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:538 part/models.py:550 +#: part/models.py:539 part/models.py:551 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:640 +#: part/models.py:641 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:771 +#: part/models.py:772 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:776 +#: part/models.py:777 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:790 +#: part/models.py:791 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:808 part/models.py:3267 +#: part/models.py:809 part/models.py:3345 msgid "Part name" msgstr "" -#: part/models.py:815 +#: part/models.py:816 msgid "Is Template" msgstr "" -#: part/models.py:816 +#: part/models.py:817 msgid "Is this part a template part?" msgstr "" -#: part/models.py:826 +#: part/models.py:827 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:827 +#: part/models.py:828 msgid "Variant Of" msgstr "" -#: part/models.py:833 +#: part/models.py:834 msgid "Part description" msgstr "" -#: part/models.py:839 +#: part/models.py:840 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:846 part/models.py:2966 part/models.py:3210 +#: part/models.py:847 part/models.py:3044 part/models.py:3288 #: part/templates/part/part_base.html:263 -#: templates/InvenTree/settings/settings.html:229 +#: templates/InvenTree/settings/settings.html:230 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1506 templates/js/translated/part.js:1763 +#: templates/js/translated/part.js:1784 templates/js/translated/part.js:2051 msgid "Category" msgstr "" -#: part/models.py:847 +#: part/models.py:848 msgid "Part category" msgstr "" -#: part/models.py:853 +#: part/models.py:854 msgid "Internal Part Number" msgstr "" -#: part/models.py:859 +#: part/models.py:860 msgid "Part revision or version number" msgstr "" -#: part/models.py:885 +#: part/models.py:886 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:930 part/templates/part/part_base.html:369 +#: part/models.py:931 part/templates/part/part_base.html:383 msgid "Default Supplier" msgstr "" -#: part/models.py:931 +#: part/models.py:932 msgid "Default supplier part" msgstr "" -#: part/models.py:938 +#: part/models.py:939 msgid "Default Expiry" msgstr "" -#: part/models.py:939 +#: part/models.py:940 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:945 +#: part/models.py:946 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:952 +#: part/models.py:953 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:958 +#: part/models.py:959 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:964 +#: part/models.py:965 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:970 +#: part/models.py:971 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:975 +#: part/models.py:976 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:980 +#: part/models.py:981 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:985 +#: part/models.py:986 msgid "Is this part active?" msgstr "" -#: part/models.py:990 +#: part/models.py:991 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:992 +#: part/models.py:993 msgid "Part notes" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "BOM checksum" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:997 +#: part/models.py:998 msgid "BOM checked by" msgstr "" -#: part/models.py:999 +#: part/models.py:1000 msgid "BOM checked date" msgstr "" -#: part/models.py:1003 +#: part/models.py:1004 msgid "Creation User" msgstr "" -#: part/models.py:1863 +#: part/models.py:1010 part/templates/part/part_base.html:345 +#: stock/templates/stock/item_base.html:445 +#: templates/js/translated/part.js:1901 +msgid "Last Stocktake" +msgstr "" + +#: part/models.py:1869 msgid "Sell multiple" msgstr "" -#: part/models.py:2763 +#: part/models.py:2781 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:2768 +#: part/models.py:2786 templates/js/translated/part.js:806 msgid "Updated" msgstr "" -#: part/models.py:2769 +#: part/models.py:2787 msgid "Timestamp of last pricing update" msgstr "" -#: part/models.py:2786 +#: part/models.py:2804 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:2787 +#: part/models.py:2805 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:2792 +#: part/models.py:2810 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:2793 +#: part/models.py:2811 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:2798 +#: part/models.py:2816 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:2799 +#: part/models.py:2817 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:2804 +#: part/models.py:2822 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:2805 +#: part/models.py:2823 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:2810 +#: part/models.py:2828 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:2811 +#: part/models.py:2829 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:2816 +#: part/models.py:2834 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:2817 +#: part/models.py:2835 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:2822 +#: part/models.py:2840 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:2823 +#: part/models.py:2841 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:2828 +#: part/models.py:2846 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:2829 +#: part/models.py:2847 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:2834 +#: part/models.py:2852 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:2835 +#: part/models.py:2853 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:2840 +#: part/models.py:2858 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:2841 +#: part/models.py:2859 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:2847 +#: part/models.py:2865 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:2853 +#: part/models.py:2871 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:2858 +#: part/models.py:2876 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:2859 +#: part/models.py:2877 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:2864 +#: part/models.py:2882 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:2865 +#: part/models.py:2883 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:2870 +#: part/models.py:2888 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:2871 +#: part/models.py:2889 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:2876 +#: part/models.py:2894 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:2877 +#: part/models.py:2895 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3013 +#: part/models.py:2913 +msgid "Part for stocktake" +msgstr "" + +#: part/models.py:2920 +msgid "Total available stock at time of stocktake" +msgstr "" + +#: part/models.py:2924 part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:63 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:2043 templates/js/translated/part.js:887 +#: templates/js/translated/pricing.js:537 +#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2511 +msgid "Date" +msgstr "" + +#: part/models.py:2925 +msgid "Date stocktake was performed" +msgstr "" + +#: part/models.py:2933 +msgid "Additional notes" +msgstr "" + +#: part/models.py:2941 +msgid "User who performed this stocktake" +msgstr "" + +#: part/models.py:3091 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3030 +#: part/models.py:3108 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:3050 templates/js/translated/part.js:2109 -#: templates/js/translated/stock.js:1379 +#: part/models.py:3128 templates/js/translated/part.js:2397 +#: templates/js/translated/stock.js:1378 msgid "Test Name" msgstr "" -#: part/models.py:3051 +#: part/models.py:3129 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3056 +#: part/models.py:3134 msgid "Test Description" msgstr "" -#: part/models.py:3057 +#: part/models.py:3135 msgid "Enter description for this test" msgstr "" -#: part/models.py:3062 templates/js/translated/part.js:2118 +#: part/models.py:3140 templates/js/translated/part.js:2406 #: templates/js/translated/table_filters.js:322 msgid "Required" msgstr "" -#: part/models.py:3063 +#: part/models.py:3141 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3068 templates/js/translated/part.js:2126 +#: part/models.py:3146 templates/js/translated/part.js:2414 msgid "Requires Value" msgstr "" -#: part/models.py:3069 +#: part/models.py:3147 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3074 templates/js/translated/part.js:2133 +#: part/models.py:3152 templates/js/translated/part.js:2421 msgid "Requires Attachment" msgstr "" -#: part/models.py:3075 +#: part/models.py:3153 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3116 +#: part/models.py:3194 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3124 +#: part/models.py:3202 msgid "Parameter Name" msgstr "" -#: part/models.py:3128 +#: part/models.py:3206 msgid "Parameter Units" msgstr "" -#: part/models.py:3133 +#: part/models.py:3211 msgid "Parameter description" msgstr "" -#: part/models.py:3166 +#: part/models.py:3244 msgid "Parent Part" msgstr "" -#: part/models.py:3168 part/models.py:3216 part/models.py:3217 -#: templates/InvenTree/settings/settings.html:224 +#: part/models.py:3246 part/models.py:3294 part/models.py:3295 +#: templates/InvenTree/settings/settings.html:225 msgid "Parameter Template" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Data" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Parameter Value" msgstr "" -#: part/models.py:3221 templates/InvenTree/settings/settings.html:233 +#: part/models.py:3299 templates/InvenTree/settings/settings.html:234 msgid "Default Value" msgstr "" -#: part/models.py:3222 +#: part/models.py:3300 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3259 +#: part/models.py:3337 msgid "Part ID or part name" msgstr "" -#: part/models.py:3263 +#: part/models.py:3341 msgid "Unique part ID value" msgstr "" -#: part/models.py:3271 +#: part/models.py:3349 msgid "Part IPN value" msgstr "" -#: part/models.py:3274 +#: part/models.py:3352 msgid "Level" msgstr "" -#: part/models.py:3275 +#: part/models.py:3353 msgid "BOM level" msgstr "" -#: part/models.py:3344 +#: part/models.py:3422 msgid "Select parent part" msgstr "" -#: part/models.py:3352 +#: part/models.py:3430 msgid "Sub part" msgstr "" -#: part/models.py:3353 +#: part/models.py:3431 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:3359 +#: part/models.py:3437 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:3363 part/templates/part/upload_bom.html:58 +#: part/models.py:3441 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:933 templates/js/translated/bom.js:986 #: templates/js/translated/build.js:1868 #: templates/js/translated/table_filters.js:84 @@ -5237,189 +5304,189 @@ msgstr "" msgid "Optional" msgstr "" -#: part/models.py:3364 +#: part/models.py:3442 msgid "This BOM item is optional" msgstr "" -#: part/models.py:3369 templates/js/translated/bom.js:929 +#: part/models.py:3447 templates/js/translated/bom.js:929 #: templates/js/translated/bom.js:995 templates/js/translated/build.js:1859 #: templates/js/translated/table_filters.js:88 msgid "Consumable" msgstr "" -#: part/models.py:3370 +#: part/models.py:3448 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:3374 part/templates/part/upload_bom.html:55 +#: part/models.py:3452 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:3375 +#: part/models.py:3453 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:3378 +#: part/models.py:3456 msgid "BOM item reference" msgstr "" -#: part/models.py:3381 +#: part/models.py:3459 msgid "BOM item notes" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "Checksum" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "BOM line checksum" msgstr "" -#: part/models.py:3387 part/templates/part/upload_bom.html:57 +#: part/models.py:3465 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1012 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:108 msgid "Inherited" msgstr "" -#: part/models.py:3388 +#: part/models.py:3466 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:3393 part/templates/part/upload_bom.html:56 +#: part/models.py:3471 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1004 msgid "Allow Variants" msgstr "" -#: part/models.py:3394 +#: part/models.py:3472 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:3480 stock/models.py:558 +#: part/models.py:3558 stock/models.py:558 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:3489 part/models.py:3491 +#: part/models.py:3567 part/models.py:3569 msgid "Sub part must be specified" msgstr "" -#: part/models.py:3618 +#: part/models.py:3696 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:3639 +#: part/models.py:3717 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:3652 +#: part/models.py:3730 msgid "Parent BOM item" msgstr "" -#: part/models.py:3660 +#: part/models.py:3738 msgid "Substitute part" msgstr "" -#: part/models.py:3675 +#: part/models.py:3753 msgid "Part 1" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Part 2" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Select Related Part" msgstr "" -#: part/models.py:3697 +#: part/models.py:3775 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:3701 +#: part/models.py:3779 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:155 part/serializers.py:183 stock/serializers.py:183 +#: part/serializers.py:157 part/serializers.py:185 stock/serializers.py:183 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:543 +#: part/serializers.py:584 msgid "Update" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:585 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:854 +#: part/serializers.py:895 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:862 +#: part/serializers.py:903 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:863 +#: part/serializers.py:904 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:868 +#: part/serializers.py:909 msgid "Include Inherited" msgstr "" -#: part/serializers.py:869 +#: part/serializers.py:910 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:874 +#: part/serializers.py:915 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:875 +#: part/serializers.py:916 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:921 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:881 +#: part/serializers.py:922 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:962 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:922 +#: part/serializers.py:963 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:952 +#: part/serializers.py:993 msgid "No part column specified" msgstr "" -#: part/serializers.py:995 +#: part/serializers.py:1036 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:998 +#: part/serializers.py:1039 msgid "No matching part found" msgstr "" -#: part/serializers.py:1001 +#: part/serializers.py:1042 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1010 +#: part/serializers.py:1051 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1059 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1039 +#: part/serializers.py:1080 msgid "At least one BOM item is required" msgstr "" @@ -5451,7 +5518,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:267 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:290 msgid "BOM actions" msgstr "" @@ -5508,8 +5575,8 @@ msgstr "" msgid "New Part" msgstr "" -#: part/templates/part/category.html:169 part/templates/part/detail.html:366 -#: part/templates/part/detail.html:397 +#: part/templates/part/category.html:169 part/templates/part/detail.html:389 +#: part/templates/part/detail.html:420 msgid "Options" msgstr "" @@ -5557,7 +5624,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:404 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:407 msgid "Duplicate Part" msgstr "" @@ -5594,118 +5661,128 @@ msgstr "" msgid "Refresh" msgstr "" -#: part/templates/part/detail.html:59 +#: part/templates/part/detail.html:65 +msgid "Add stocktake information" +msgstr "" + +#: part/templates/part/detail.html:66 part/templates/part/part_sidebar.html:49 +#: stock/admin.py:107 templates/js/translated/stock.js:1905 +msgid "Stocktake" +msgstr "" + +#: part/templates/part/detail.html:82 msgid "Part Test Templates" msgstr "" -#: part/templates/part/detail.html:64 +#: part/templates/part/detail.html:87 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:144 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:141 +#: part/templates/part/detail.html:164 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:156 +#: part/templates/part/detail.html:179 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:160 +#: part/templates/part/detail.html:183 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:161 +#: part/templates/part/detail.html:184 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:188 +#: part/templates/part/detail.html:211 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:225 part/templates/part/part_sidebar.html:52 +#: part/templates/part/detail.html:248 part/templates/part/part_sidebar.html:57 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:229 part/templates/part/detail.html:230 +#: part/templates/part/detail.html:252 part/templates/part/detail.html:253 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:250 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:273 part/templates/part/part_sidebar.html:17 +#: report/templates/report/inventree_bill_of_materials_report.html:100 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:255 +#: part/templates/part/detail.html:278 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:259 templates/js/translated/bom.js:309 +#: part/templates/part/detail.html:282 templates/js/translated/bom.js:309 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:261 +#: part/templates/part/detail.html:284 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:271 +#: part/templates/part/detail.html:294 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:272 templates/js/translated/part.js:276 +#: part/templates/part/detail.html:295 templates/js/translated/part.js:279 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:273 +#: part/templates/part/detail.html:296 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:278 part/templates/part/detail.html:279 +#: part/templates/part/detail.html:301 part/templates/part/detail.html:302 #: templates/js/translated/bom.js:1268 templates/js/translated/bom.js:1269 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:292 +#: part/templates/part/detail.html:315 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:310 +#: part/templates/part/detail.html:333 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:337 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:360 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:353 +#: part/templates/part/detail.html:376 msgid "Part Suppliers" msgstr "" -#: part/templates/part/detail.html:383 +#: part/templates/part/detail.html:406 msgid "Part Manufacturers" msgstr "" -#: part/templates/part/detail.html:399 +#: part/templates/part/detail.html:422 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:696 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:704 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:796 msgid "Add Test Result Template" msgstr "" #: part/templates/part/import_wizard/ajax_part_upload.html:29 #: part/templates/part/import_wizard/part_upload.html:14 -msgid "Unsuffitient privileges." +msgid "Insufficient privileges." msgstr "" #: part/templates/part/import_wizard/part_upload.html:8 @@ -5716,6 +5793,34 @@ msgstr "" msgid "Import Parts from File" msgstr "" +#: part/templates/part/import_wizard/part_upload.html:31 +msgid "Requirements for part import" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "The part import file must contain the required named columns as provided in the " +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:89 +msgid "Download Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:92 +#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 +#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 +msgid "Format" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:93 +#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 +#: templates/js/translated/order.js:999 +msgid "Select file format" +msgstr "" + #: part/templates/part/part_app_base.html:12 msgid "Part List" msgstr "" @@ -5805,12 +5910,12 @@ msgstr "" #: templates/js/translated/company.js:660 #: templates/js/translated/company.js:921 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:677 templates/js/translated/part.js:755 +#: templates/js/translated/part.js:680 templates/js/translated/part.js:1026 msgid "Inactive" msgstr "" #: part/templates/part/part_base.html:165 -#: part/templates/part/part_base.html:666 +#: part/templates/part/part_base.html:680 msgid "Show Part Details" msgstr "" @@ -5838,38 +5943,38 @@ msgid "Minimum stock level" msgstr "" #: part/templates/part/part_base.html:330 templates/js/translated/bom.js:1032 -#: templates/js/translated/part.js:798 templates/js/translated/part.js:1597 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:1875 #: templates/js/translated/pricing.js:124 #: templates/js/translated/pricing.js:762 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:345 +#: part/templates/part/part_base.html:359 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:349 +#: part/templates/part/part_base.html:363 #: stock/templates/stock/item_base.html:331 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:449 +#: part/templates/part/part_base.html:463 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:495 +#: part/templates/part/part_base.html:509 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:512 +#: part/templates/part/part_base.html:526 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:564 +#: part/templates/part/part_base.html:578 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:660 +#: part/templates/part/part_base.html:674 msgid "Hide Part Details" msgstr "" @@ -5921,15 +6026,6 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" -#: part/templates/part/part_scheduling.html:13 -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:63 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:2043 templates/js/translated/pricing.js:537 -#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2516 -msgid "Date" -msgstr "" - #: part/templates/part/part_scheduling.html:14 msgid "Scheduled Quantity" msgstr "" @@ -5942,7 +6038,7 @@ msgstr "" msgid "Scheduling" msgstr "" -#: part/templates/part/part_sidebar.html:48 +#: part/templates/part/part_sidebar.html:53 msgid "Test Templates" msgstr "" @@ -5961,7 +6057,7 @@ msgstr "" #: part/templates/part/prices.html:25 stock/admin.py:106 #: stock/templates/stock/item_base.html:440 #: templates/js/translated/company.js:1039 -#: templates/js/translated/stock.js:1940 +#: templates/js/translated/stock.js:1935 msgid "Last Updated" msgstr "" @@ -6024,8 +6120,8 @@ msgstr "" msgid "Add Sell Price Break" msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:639 -#: templates/js/translated/part.js:1366 templates/js/translated/part.js:1368 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:1644 templates/js/translated/part.js:1646 msgid "No Stock" msgstr "" @@ -6088,27 +6184,32 @@ msgstr "" msgid "{title} v{version}" msgstr "" -#: part/views.py:109 +#: part/views.py:111 msgid "Match References" msgstr "" -#: part/views.py:354 +#: part/views.py:239 +#, python-brace-format +msgid "Can't import part {name} because there is no category assigned" +msgstr "" + +#: part/views.py:378 msgid "Part QR Code" msgstr "" -#: part/views.py:372 +#: part/views.py:396 msgid "Select Part Image" msgstr "" -#: part/views.py:398 +#: part/views.py:422 msgid "Updated part image" msgstr "" -#: part/views.py:401 +#: part/views.py:425 msgid "Part image not found" msgstr "" -#: part/views.py:493 +#: part/views.py:517 msgid "Part Pricing" msgstr "" @@ -6157,28 +6258,48 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:29 -#: plugin/builtin/integration/core_notifications.py:31 +#: plugin/builtin/integration/core_notifications.py:33 msgid "InvenTree contributors" msgstr "" -#: plugin/builtin/integration/core_notifications.py:30 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:32 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notificaton methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:37 -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:80 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:38 -#: plugin/builtin/integration/core_notifications.py:57 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:81 msgid "Allow sending of emails for event notifications" msgstr "" +#: plugin/builtin/integration/core_notifications.py:45 +msgid "Enable slack notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:46 +msgid "Allow sending of slack channel messages for event notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:51 +msgid "Slack incoming webhook url" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:52 +msgid "URL that is used to send messages to a slack channel" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:162 +msgid "Open link" +msgstr "" + #: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" @@ -6410,6 +6531,10 @@ msgstr "" msgid "Asset file description" msgstr "" +#: report/templates/report/inventree_bill_of_materials_report.html:133 +msgid "Materials needed" +msgstr "" + #: report/templates/report/inventree_build_order_base.html:146 msgid "Required For" msgstr "" @@ -6428,7 +6553,7 @@ msgstr "" #: templates/js/translated/build.js:1244 templates/js/translated/build.js:1745 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:121 templates/js/translated/order.js:3611 -#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:522 +#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:521 msgid "Serial Number" msgstr "" @@ -6460,8 +6585,9 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: stock/admin.py:87 templates/js/translated/stock.js:642 -#: templates/js/translated/stock.js:812 templates/js/translated/stock.js:2765 +#: stock/admin.py:87 templates/js/translated/part.js:749 +#: templates/js/translated/stock.js:641 templates/js/translated/stock.js:811 +#: templates/js/translated/stock.js:2760 msgid "Serial" msgstr "" @@ -6516,13 +6642,9 @@ msgstr "" msgid "Purchase Order ID" msgstr "" -#: stock/admin.py:107 templates/js/translated/stock.js:1910 -msgid "Stocktake" -msgstr "" - #: stock/admin.py:108 stock/models.py:764 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/stock.js:1924 +#: templates/js/translated/stock.js:1919 msgid "Expiry Date" msgstr "" @@ -6937,7 +7059,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2912 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2907 msgid "Install Stock Item" msgstr "" @@ -6945,7 +7067,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1561 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1560 msgid "Add Test Result" msgstr "" @@ -7118,10 +7240,6 @@ msgstr "" msgid "Stale" msgstr "" -#: stock/templates/stock/item_base.html:445 -msgid "Last Stocktake" -msgstr "" - #: stock/templates/stock/item_base.html:449 msgid "No stocktake performed" msgstr "" @@ -7395,7 +7513,8 @@ msgstr "" #: templates/InvenTree/notifications/notifications.html:10 #: templates/InvenTree/notifications/sidebar.html:5 -#: templates/InvenTree/settings/sidebar.html:17 templates/notifications.html:5 +#: templates/InvenTree/settings/sidebar.html:17 +#: templates/InvenTree/settings/sidebar.html:35 templates/notifications.html:5 msgid "Notifications" msgstr "" @@ -7476,6 +7595,14 @@ msgstr "" msgid "Open in new tab" msgstr "" +#: templates/InvenTree/settings/notifications.html:9 +msgid "Global Notification Settings" +msgstr "" + +#: templates/InvenTree/settings/notifications.html:18 +msgid "Slug" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -7493,7 +7620,7 @@ msgid "Part Parameter Templates" msgstr "" #: templates/InvenTree/settings/plugin.html:10 -#: templates/InvenTree/settings/sidebar.html:55 +#: templates/InvenTree/settings/sidebar.html:57 msgid "Plugin Settings" msgstr "" @@ -7502,7 +7629,7 @@ msgid "Changing the settings below require you to immediately restart the server msgstr "" #: templates/InvenTree/settings/plugin.html:38 -#: templates/InvenTree/settings/sidebar.html:57 +#: templates/InvenTree/settings/sidebar.html:59 msgid "Plugins" msgstr "" @@ -7670,67 +7797,67 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:117 +#: templates/InvenTree/settings/settings.html:118 msgid "Edit Plugin Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:119 +#: templates/InvenTree/settings/settings.html:120 msgid "Edit Notification Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:122 +#: templates/InvenTree/settings/settings.html:123 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:124 +#: templates/InvenTree/settings/settings.html:125 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:214 +#: templates/InvenTree/settings/settings.html:215 msgid "No category parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:236 -#: templates/InvenTree/settings/settings.html:361 -msgid "Edit Template" -msgstr "" - #: templates/InvenTree/settings/settings.html:237 #: templates/InvenTree/settings/settings.html:362 +msgid "Edit Template" +msgstr "" + +#: templates/InvenTree/settings/settings.html:238 +#: templates/InvenTree/settings/settings.html:363 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:277 +#: templates/InvenTree/settings/settings.html:278 msgid "Create Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:322 +#: templates/InvenTree/settings/settings.html:323 msgid "Delete Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:334 +#: templates/InvenTree/settings/settings.html:335 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:338 +#: templates/InvenTree/settings/settings.html:339 #: templates/js/translated/news.js:29 #: templates/js/translated/notification.js:36 msgid "ID" msgstr "" -#: templates/InvenTree/settings/settings.html:380 +#: templates/InvenTree/settings/settings.html:381 msgid "Create Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:399 +#: templates/InvenTree/settings/settings.html:400 msgid "Edit Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:413 +#: templates/InvenTree/settings/settings.html:414 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/InvenTree/settings/settings.html:421 +#: templates/InvenTree/settings/settings.html:422 msgid "Delete Part Parameter Template" msgstr "" @@ -7759,12 +7886,12 @@ msgid "Search Settings" msgstr "" #: templates/InvenTree/settings/sidebar.html:19 -#: templates/InvenTree/settings/sidebar.html:37 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Label Printing" msgstr "" #: templates/InvenTree/settings/sidebar.html:21 -#: templates/InvenTree/settings/sidebar.html:39 +#: templates/InvenTree/settings/sidebar.html:41 msgid "Reporting" msgstr "" @@ -7776,7 +7903,7 @@ msgstr "" msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:43 +#: templates/InvenTree/settings/sidebar.html:45 msgid "Categories" msgstr "" @@ -7946,64 +8073,64 @@ msgstr "" msgid "Do you really want to remove the selected email address?" msgstr "" -#: templates/InvenTree/settings/user_display.html:28 +#: templates/InvenTree/settings/user_display.html:29 msgid "Theme Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:38 +#: templates/InvenTree/settings/user_display.html:39 msgid "Select theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:49 +#: templates/InvenTree/settings/user_display.html:50 msgid "Set Theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:57 +#: templates/InvenTree/settings/user_display.html:58 msgid "Language Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:66 +#: templates/InvenTree/settings/user_display.html:67 msgid "Select language" msgstr "" -#: templates/InvenTree/settings/user_display.html:82 +#: templates/InvenTree/settings/user_display.html:83 #, python-format msgid "%(lang_translated)s%% translated" msgstr "" -#: templates/InvenTree/settings/user_display.html:84 +#: templates/InvenTree/settings/user_display.html:85 msgid "No translations available" msgstr "" -#: templates/InvenTree/settings/user_display.html:91 +#: templates/InvenTree/settings/user_display.html:92 msgid "Set Language" msgstr "" -#: templates/InvenTree/settings/user_display.html:94 +#: templates/InvenTree/settings/user_display.html:95 msgid "Some languages are not complete" msgstr "" -#: templates/InvenTree/settings/user_display.html:96 +#: templates/InvenTree/settings/user_display.html:97 msgid "Show only sufficent" msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "and hidden." msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "Show them too" msgstr "" -#: templates/InvenTree/settings/user_display.html:105 +#: templates/InvenTree/settings/user_display.html:106 msgid "Help the translation efforts!" msgstr "" -#: templates/InvenTree/settings/user_display.html:106 +#: templates/InvenTree/settings/user_display.html:107 msgid "Native language translation of the web application is community contributed via crowdin. Contributions are welcomed and encouraged." msgstr "" -#: templates/InvenTree/settings/user_display.html:107 +#: templates/InvenTree/settings/user_display.html:108 msgid "InvenTree Translation Project" msgstr "" @@ -8081,7 +8208,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:646 +#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:649 msgid "Confirm" msgstr "" @@ -8115,7 +8242,7 @@ msgid "Forgot Password?" msgstr "" #: templates/account/login.html:53 -msgid "or use SSO" +msgid "Sign in using third-party SSO" msgstr "" #: templates/account/logout.html:5 templates/account/logout.html:8 @@ -8316,7 +8443,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 -#: templates/js/translated/part.js:2438 +#: templates/js/translated/part.js:2726 msgid "Minimum Quantity" msgstr "" @@ -8469,7 +8596,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1089 +#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1088 msgid "Remove stock item" msgstr "" @@ -8551,16 +8678,6 @@ msgstr "" msgid "Download BOM Template" msgstr "" -#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 -#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 -msgid "Format" -msgstr "" - -#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 -#: templates/js/translated/order.js:999 -msgid "Select file format" -msgstr "" - #: templates/js/translated/bom.js:320 msgid "Multi Level BOM" msgstr "" @@ -8691,7 +8808,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:1145 templates/js/translated/build.js:1923 -#: templates/js/translated/part.js:790 templates/js/translated/part.js:1565 +#: templates/js/translated/part.js:1061 templates/js/translated/part.js:1843 msgid "Includes variant stock" msgstr "" @@ -8776,13 +8893,13 @@ msgstr "" msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:317 templates/js/translated/stock.js:95 -#: templates/js/translated/stock.js:237 +#: templates/js/translated/build.js:317 templates/js/translated/stock.js:94 +#: templates/js/translated/stock.js:236 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:319 templates/js/translated/stock.js:97 -#: templates/js/translated/stock.js:239 +#: templates/js/translated/build.js:319 templates/js/translated/stock.js:96 +#: templates/js/translated/stock.js:238 msgid "Latest serial number" msgstr "" @@ -8990,9 +9107,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1459 -#: templates/js/translated/part.js:1996 templates/js/translated/stock.js:1725 -#: templates/js/translated/stock.js:2428 +#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1737 +#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1724 +#: templates/js/translated/stock.js:2423 msgid "Select" msgstr "" @@ -9004,7 +9121,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2695 +#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2690 msgid "No user information" msgstr "" @@ -9077,34 +9194,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:652 -#: templates/js/translated/company.js:913 templates/js/translated/part.js:661 -#: templates/js/translated/part.js:747 +#: templates/js/translated/company.js:913 templates/js/translated/part.js:664 +#: templates/js/translated/part.js:1018 msgid "Template part" msgstr "" #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:917 templates/js/translated/part.js:665 -#: templates/js/translated/part.js:751 +#: templates/js/translated/company.js:917 templates/js/translated/part.js:668 +#: templates/js/translated/part.js:1022 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:784 templates/js/translated/part.js:870 +#: templates/js/translated/company.js:784 templates/js/translated/part.js:1141 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:821 templates/js/translated/part.js:912 +#: templates/js/translated/company.js:821 templates/js/translated/part.js:1183 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:822 templates/js/translated/part.js:913 +#: templates/js/translated/company.js:822 templates/js/translated/part.js:1184 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:841 templates/js/translated/part.js:930 +#: templates/js/translated/company.js:841 templates/js/translated/part.js:1201 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:852 templates/js/translated/part.js:942 +#: templates/js/translated/company.js:852 templates/js/translated/part.js:1213 msgid "Delete Parameter" msgstr "" @@ -9184,61 +9301,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:369 templates/js/translated/forms.js:384 -#: templates/js/translated/forms.js:398 templates/js/translated/forms.js:412 +#: templates/js/translated/forms.js:372 templates/js/translated/forms.js:387 +#: templates/js/translated/forms.js:401 templates/js/translated/forms.js:415 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:371 +#: templates/js/translated/forms.js:374 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:386 +#: templates/js/translated/forms.js:389 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:400 +#: templates/js/translated/forms.js:403 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:414 +#: templates/js/translated/forms.js:417 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:672 +#: templates/js/translated/forms.js:675 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:773 +#: templates/js/translated/forms.js:776 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1266 templates/modals.html:19 +#: templates/js/translated/forms.js:1269 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1703 +#: templates/js/translated/forms.js:1706 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1919 templates/search.html:29 +#: templates/js/translated/forms.js:1922 templates/search.html:29 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2172 +#: templates/js/translated/forms.js:2175 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:2640 +#: templates/js/translated/forms.js:2643 msgid "Select Columns" msgstr "" @@ -9259,7 +9376,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1113 +#: templates/js/translated/stock.js:1112 msgid "Select Stock Items" msgstr "" @@ -9593,7 +9710,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2184 +#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2179 msgid "Stock Status" msgstr "" @@ -9617,7 +9734,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1982 templates/js/translated/part.js:983 +#: templates/js/translated/order.js:1982 templates/js/translated/part.js:1254 msgid "No purchase orders found" msgstr "" @@ -9650,8 +9767,8 @@ msgstr "" msgid "Total" msgstr "" -#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1085 -#: templates/js/translated/part.js:1137 +#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1356 +#: templates/js/translated/part.js:1408 msgid "Total Quantity" msgstr "" @@ -9669,11 +9786,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2388 templates/js/translated/order.js:3900 -#: templates/js/translated/part.js:1121 +#: templates/js/translated/part.js:1392 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1166 +#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1437 msgid "Receive line item" msgstr "" @@ -9794,7 +9911,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3623 templates/js/translated/order.js:3712 -#: templates/js/translated/stock.js:1641 +#: templates/js/translated/stock.js:1640 msgid "Shipped to customer" msgstr "" @@ -9838,334 +9955,358 @@ msgstr "" msgid "No matching lines" msgstr "" -#: templates/js/translated/part.js:52 +#: templates/js/translated/part.js:55 msgid "Part Attributes" msgstr "" -#: templates/js/translated/part.js:56 +#: templates/js/translated/part.js:59 msgid "Part Creation Options" msgstr "" -#: templates/js/translated/part.js:60 +#: templates/js/translated/part.js:63 msgid "Part Duplication Options" msgstr "" -#: templates/js/translated/part.js:64 +#: templates/js/translated/part.js:67 msgid "Supplier Options" msgstr "" -#: templates/js/translated/part.js:78 +#: templates/js/translated/part.js:81 msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:168 +#: templates/js/translated/part.js:171 msgid "Create Initial Stock" msgstr "" -#: templates/js/translated/part.js:169 +#: templates/js/translated/part.js:172 msgid "Create an initial stock item for this part" msgstr "" -#: templates/js/translated/part.js:176 +#: templates/js/translated/part.js:179 msgid "Initial Stock Quantity" msgstr "" -#: templates/js/translated/part.js:177 +#: templates/js/translated/part.js:180 msgid "Specify initial stock quantity for this part" msgstr "" -#: templates/js/translated/part.js:184 +#: templates/js/translated/part.js:187 msgid "Select destination stock location" msgstr "" -#: templates/js/translated/part.js:202 +#: templates/js/translated/part.js:205 msgid "Copy Category Parameters" msgstr "" -#: templates/js/translated/part.js:203 +#: templates/js/translated/part.js:206 msgid "Copy parameter templates from selected part category" msgstr "" -#: templates/js/translated/part.js:211 +#: templates/js/translated/part.js:214 msgid "Add Supplier Data" msgstr "" -#: templates/js/translated/part.js:212 +#: templates/js/translated/part.js:215 msgid "Create initial supplier data for this part" msgstr "" -#: templates/js/translated/part.js:268 +#: templates/js/translated/part.js:271 msgid "Copy Image" msgstr "" -#: templates/js/translated/part.js:269 +#: templates/js/translated/part.js:272 msgid "Copy image from original part" msgstr "" -#: templates/js/translated/part.js:277 +#: templates/js/translated/part.js:280 msgid "Copy bill of materials from original part" msgstr "" -#: templates/js/translated/part.js:284 +#: templates/js/translated/part.js:287 msgid "Copy Parameters" msgstr "" -#: templates/js/translated/part.js:285 +#: templates/js/translated/part.js:288 msgid "Copy parameter data from original part" msgstr "" -#: templates/js/translated/part.js:298 +#: templates/js/translated/part.js:301 msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:313 templates/js/translated/stock.js:122 +#: templates/js/translated/part.js:316 templates/js/translated/stock.js:121 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:329 +#: templates/js/translated/part.js:332 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:342 +#: templates/js/translated/part.js:345 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:347 +#: templates/js/translated/part.js:350 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:359 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:360 +#: templates/js/translated/part.js:363 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:368 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:394 +#: templates/js/translated/part.js:397 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:396 +#: templates/js/translated/part.js:399 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:407 +#: templates/js/translated/part.js:410 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:459 +#: templates/js/translated/part.js:462 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:460 +#: templates/js/translated/part.js:463 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:477 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:476 +#: templates/js/translated/part.js:479 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:477 +#: templates/js/translated/part.js:480 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:478 +#: templates/js/translated/part.js:481 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:485 +#: templates/js/translated/part.js:488 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:521 +#: templates/js/translated/part.js:524 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:523 +#: templates/js/translated/part.js:526 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:531 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:530 +#: templates/js/translated/part.js:533 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:547 +#: templates/js/translated/part.js:550 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:560 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:560 +#: templates/js/translated/part.js:563 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:585 +#: templates/js/translated/part.js:588 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1547 +#: templates/js/translated/part.js:612 templates/js/translated/part.js:1825 #: templates/js/translated/table_filters.js:488 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:622 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:653 templates/js/translated/part.js:739 +#: templates/js/translated/part.js:656 templates/js/translated/part.js:1010 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:657 templates/js/translated/part.js:743 +#: templates/js/translated/part.js:660 templates/js/translated/part.js:1014 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:669 +#: templates/js/translated/part.js:672 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:673 +#: templates/js/translated/part.js:676 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:815 +#: templates/js/translated/part.js:761 +msgid "Stock item has not been checked recently" +msgstr "" + +#: templates/js/translated/part.js:769 +msgid "Update item" +msgstr "" + +#: templates/js/translated/part.js:770 +msgid "Delete item" +msgstr "" + +#: templates/js/translated/part.js:871 +msgid "No stocktake information available" +msgstr "" + +#: templates/js/translated/part.js:910 templates/js/translated/part.js:933 +msgid "Edit Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:914 templates/js/translated/part.js:945 +msgid "Delete Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:1086 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1236 +#: templates/js/translated/part.js:1507 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1260 +#: templates/js/translated/part.js:1531 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1327 templates/js/translated/part.js:1648 +#: templates/js/translated/part.js:1598 templates/js/translated/part.js:1936 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1514 +#: templates/js/translated/part.js:1792 msgid "No category" msgstr "" -#: templates/js/translated/part.js:1545 +#: templates/js/translated/part.js:1823 msgid "No stock" msgstr "" -#: templates/js/translated/part.js:1569 +#: templates/js/translated/part.js:1847 msgid "Allocated to build orders" msgstr "" -#: templates/js/translated/part.js:1573 +#: templates/js/translated/part.js:1851 msgid "Allocated to sales orders" msgstr "" -#: templates/js/translated/part.js:1672 templates/js/translated/part.js:1915 -#: templates/js/translated/stock.js:2387 +#: templates/js/translated/part.js:1960 templates/js/translated/part.js:2203 +#: templates/js/translated/stock.js:2382 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1688 +#: templates/js/translated/part.js:1976 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1754 +#: templates/js/translated/part.js:2042 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1759 +#: templates/js/translated/part.js:2047 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1764 +#: templates/js/translated/part.js:2052 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1777 +#: templates/js/translated/part.js:2065 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1935 templates/js/translated/stock.js:2407 +#: templates/js/translated/part.js:2223 templates/js/translated/stock.js:2402 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2015 +#: templates/js/translated/part.js:2303 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2031 +#: templates/js/translated/part.js:2319 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2095 +#: templates/js/translated/part.js:2383 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2146 templates/js/translated/stock.js:1338 +#: templates/js/translated/part.js:2434 templates/js/translated/stock.js:1337 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2147 templates/js/translated/stock.js:1339 -#: templates/js/translated/stock.js:1599 +#: templates/js/translated/part.js:2435 templates/js/translated/stock.js:1338 +#: templates/js/translated/stock.js:1598 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2153 +#: templates/js/translated/part.js:2441 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2175 +#: templates/js/translated/part.js:2463 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2189 +#: templates/js/translated/part.js:2477 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2270 templates/js/translated/part.js:2271 +#: templates/js/translated/part.js:2558 templates/js/translated/part.js:2559 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2273 +#: templates/js/translated/part.js:2561 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:2279 +#: templates/js/translated/part.js:2567 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:2329 +#: templates/js/translated/part.js:2617 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2335 +#: templates/js/translated/part.js:2623 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:2431 +#: templates/js/translated/part.js:2719 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2447 +#: templates/js/translated/part.js:2735 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:2492 +#: templates/js/translated/part.js:2780 msgid "Minimum Stock Level" msgstr "" @@ -10293,388 +10434,388 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:74 +#: templates/js/translated/stock.js:73 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:104 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:114 +#: templates/js/translated/stock.js:113 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:148 +#: templates/js/translated/stock.js:147 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:163 +#: templates/js/translated/stock.js:162 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:177 +#: templates/js/translated/stock.js:176 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:184 +#: templates/js/translated/stock.js:183 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:193 +#: templates/js/translated/stock.js:192 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:197 +#: templates/js/translated/stock.js:196 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:201 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:256 +#: templates/js/translated/stock.js:255 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:298 +#: templates/js/translated/stock.js:297 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:304 +#: templates/js/translated/stock.js:303 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:368 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:389 +#: templates/js/translated/stock.js:388 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:405 +#: templates/js/translated/stock.js:404 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:410 +#: templates/js/translated/stock.js:409 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:431 +#: templates/js/translated/stock.js:430 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:481 +#: templates/js/translated/stock.js:480 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:494 +#: templates/js/translated/stock.js:493 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:519 +#: templates/js/translated/stock.js:518 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:523 templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:522 templates/js/translated/stock.js:523 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:540 +#: templates/js/translated/stock.js:539 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:560 +#: templates/js/translated/stock.js:559 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:568 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:692 +#: templates/js/translated/stock.js:691 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:693 +#: templates/js/translated/stock.js:692 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:770 +#: templates/js/translated/stock.js:769 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:771 +#: templates/js/translated/stock.js:770 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:773 +#: templates/js/translated/stock.js:772 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:774 +#: templates/js/translated/stock.js:773 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:863 +#: templates/js/translated/stock.js:862 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:864 +#: templates/js/translated/stock.js:863 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:958 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:959 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:966 +#: templates/js/translated/stock.js:965 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:967 +#: templates/js/translated/stock.js:966 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:971 +#: templates/js/translated/stock.js:970 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:972 +#: templates/js/translated/stock.js:971 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:976 +#: templates/js/translated/stock.js:975 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:977 users/models.py:220 +#: templates/js/translated/stock.js:976 users/models.py:221 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:981 +#: templates/js/translated/stock.js:980 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1114 +#: templates/js/translated/stock.js:1113 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1141 +#: templates/js/translated/stock.js:1140 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1277 +#: templates/js/translated/stock.js:1276 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1279 +#: templates/js/translated/stock.js:1278 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1284 +#: templates/js/translated/stock.js:1283 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1331 +#: templates/js/translated/stock.js:1330 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1334 +#: templates/js/translated/stock.js:1333 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1360 +#: templates/js/translated/stock.js:1359 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1417 +#: templates/js/translated/stock.js:1416 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1582 +#: templates/js/translated/stock.js:1581 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1604 +#: templates/js/translated/stock.js:1603 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1633 +#: templates/js/translated/stock.js:1632 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1637 +#: templates/js/translated/stock.js:1636 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1645 +#: templates/js/translated/stock.js:1644 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1651 +#: templates/js/translated/stock.js:1650 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1820 +#: templates/js/translated/stock.js:1815 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1825 +#: templates/js/translated/stock.js:1820 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1828 +#: templates/js/translated/stock.js:1823 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1831 +#: templates/js/translated/stock.js:1826 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1833 +#: templates/js/translated/stock.js:1828 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1835 +#: templates/js/translated/stock.js:1830 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1838 +#: templates/js/translated/stock.js:1833 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1837 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1844 +#: templates/js/translated/stock.js:1839 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1846 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1853 +#: templates/js/translated/stock.js:1848 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1855 +#: templates/js/translated/stock.js:1850 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1859 +#: templates/js/translated/stock.js:1854 #: templates/js/translated/table_filters.js:216 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1989 +#: templates/js/translated/stock.js:1984 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2026 +#: templates/js/translated/stock.js:2021 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2199 +#: templates/js/translated/stock.js:2194 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2213 +#: templates/js/translated/stock.js:2208 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2214 +#: templates/js/translated/stock.js:2209 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2446 +#: templates/js/translated/stock.js:2441 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2536 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2557 +#: templates/js/translated/stock.js:2552 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2579 +#: templates/js/translated/stock.js:2574 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2598 +#: templates/js/translated/stock.js:2593 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2617 +#: templates/js/translated/stock.js:2612 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2635 +#: templates/js/translated/stock.js:2630 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2658 +#: templates/js/translated/stock.js:2653 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2666 +#: templates/js/translated/stock.js:2661 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2737 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2793 templates/js/translated/stock.js:2829 +#: templates/js/translated/stock.js:2788 templates/js/translated/stock.js:2824 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2845 +#: templates/js/translated/stock.js:2840 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2866 +#: templates/js/translated/stock.js:2861 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2867 +#: templates/js/translated/stock.js:2862 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2869 +#: templates/js/translated/stock.js:2864 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2870 +#: templates/js/translated/stock.js:2865 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:2866 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2872 +#: templates/js/translated/stock.js:2867 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2885 +#: templates/js/translated/stock.js:2880 msgid "Select part to install" msgstr "" @@ -10699,7 +10840,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:92 -#: templates/js/translated/table_filters.js:516 +#: templates/js/translated/table_filters.js:520 msgid "Has Pricing" msgstr "" @@ -10915,6 +11056,10 @@ msgstr "" msgid "Purchasable" msgstr "" +#: templates/js/translated/table_filters.js:504 +msgid "Has stocktake entries" +msgstr "" + #: templates/js/translated/tables.js:70 msgid "Display calendar view" msgstr "" @@ -11209,34 +11354,34 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:207 +#: users/models.py:208 msgid "Permission set" msgstr "" -#: users/models.py:215 +#: users/models.py:216 msgid "Group" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "View" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "Permission to view items" msgstr "" -#: users/models.py:220 +#: users/models.py:221 msgid "Permission to add items" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Change" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Permissions to edit items" msgstr "" -#: users/models.py:224 +#: users/models.py:225 msgid "Permission to delete items" msgstr "" diff --git a/InvenTree/locale/es/LC_MESSAGES/django.po b/InvenTree/locale/es/LC_MESSAGES/django.po index 286be5e89e..4c495efd79 100644 --- a/InvenTree/locale/es/LC_MESSAGES/django.po +++ b/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: 2022-12-30 20:46+0000\n" -"PO-Revision-Date: 2022-12-31 11:30\n" +"POT-Creation-Date: 2023-01-01 11:05+0000\n" +"PO-Revision-Date: 2023-01-01 11:26\n" "Last-Translator: \n" "Language-Team: Spanish, Mexico\n" "Language: es_MX\n" @@ -34,7 +34,7 @@ msgstr "Ingrese la fecha" #: company/templates/company/sidebar.html:25 order/models.py:943 #: order/templates/order/po_sidebar.html:11 #: order/templates/order/so_sidebar.html:17 part/admin.py:27 -#: part/templates/part/part_sidebar.html:57 +#: part/models.py:2932 part/templates/part/part_sidebar.html:62 #: report/templates/report/inventree_build_order_base.html:172 #: stock/admin.py:103 stock/models.py:2061 stock/models.py:2169 #: stock/serializers.py:321 stock/serializers.py:454 stock/serializers.py:535 @@ -44,8 +44,8 @@ msgstr "Ingrese la fecha" #: templates/js/translated/company.js:1023 #: templates/js/translated/order.js:2435 templates/js/translated/order.js:2569 #: templates/js/translated/order.js:3067 templates/js/translated/order.js:4004 -#: templates/js/translated/order.js:4385 templates/js/translated/stock.js:1413 -#: templates/js/translated/stock.js:2020 +#: templates/js/translated/order.js:4385 templates/js/translated/part.js:882 +#: templates/js/translated/stock.js:1412 templates/js/translated/stock.js:2015 msgid "Notes" msgstr "Notas" @@ -204,18 +204,18 @@ msgstr "Archivo adjunto" msgid "Select file to attach" msgstr "Seleccionar archivo para adjuntar" -#: InvenTree/models.py:412 common/models.py:2366 company/models.py:129 +#: InvenTree/models.py:412 common/models.py:2373 company/models.py:129 #: company/models.py:281 company/models.py:516 order/models.py:85 -#: order/models.py:1282 part/admin.py:25 part/models.py:865 +#: order/models.py:1282 part/admin.py:25 part/models.py:866 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: stock/admin.py:102 templates/js/translated/company.js:692 #: templates/js/translated/company.js:1012 -#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1615 +#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1886 msgid "Link" msgstr "Enlace" -#: InvenTree/models.py:413 build/models.py:290 part/models.py:866 +#: InvenTree/models.py:413 build/models.py:290 part/models.py:867 #: stock/models.py:716 msgid "Link to external URL" msgstr "Enlace a URL externa" @@ -229,12 +229,13 @@ msgstr "Comentario" msgid "File comment" msgstr "Comentario del archivo" -#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1810 -#: common/models.py:1811 common/models.py:2034 common/models.py:2035 -#: common/models.py:2296 common/models.py:2297 part/models.py:2948 -#: part/models.py:2968 plugin/models.py:264 plugin/models.py:265 +#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1817 +#: common/models.py:1818 common/models.py:2041 common/models.py:2042 +#: common/models.py:2303 common/models.py:2304 part/models.py:2940 +#: part/models.py:3026 part/models.py:3046 plugin/models.py:264 +#: plugin/models.py:265 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2689 +#: templates/js/translated/stock.js:2684 msgid "User" msgstr "Usuario" @@ -271,19 +272,20 @@ msgstr "Error al cambiar el nombre del archivo" msgid "Invalid choice" msgstr "Selección no válida" -#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2020 -#: company/models.py:363 label/models.py:101 part/models.py:809 -#: part/models.py:3123 plugin/models.py:94 report/models.py:152 +#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2027 +#: company/models.py:363 label/models.py:101 part/models.py:810 +#: part/models.py:3201 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 +#: templates/InvenTree/settings/notifications.html:17 #: templates/InvenTree/settings/plugin.html:60 #: templates/InvenTree/settings/plugin.html:104 #: templates/InvenTree/settings/plugin_settings.html:23 -#: templates/InvenTree/settings/settings.html:344 +#: templates/InvenTree/settings/settings.html:345 #: templates/js/translated/company.js:581 #: templates/js/translated/company.js:794 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:711 templates/js/translated/part.js:880 -#: templates/js/translated/part.js:2010 templates/js/translated/stock.js:2434 +#: templates/js/translated/part.js:982 templates/js/translated/part.js:1151 +#: templates/js/translated/part.js:2291 templates/js/translated/stock.js:2429 msgid "Name" msgstr "Nombre" @@ -292,24 +294,25 @@ msgstr "Nombre" #: company/models.py:522 company/templates/company/company_base.html:72 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:108 label/models.py:108 -#: order/models.py:83 part/admin.py:141 part/admin.py:222 part/models.py:832 -#: part/models.py:3132 part/templates/part/category.html:75 +#: order/models.py:83 part/admin.py:174 part/admin.py:255 part/models.py:833 +#: part/models.py:3210 part/templates/part/category.html:75 #: part/templates/part/part_base.html:172 #: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/admin.py:25 stock/templates/stock/location.html:117 +#: templates/InvenTree/settings/notifications.html:19 #: templates/InvenTree/settings/plugin_settings.html:28 -#: templates/InvenTree/settings/settings.html:355 +#: templates/InvenTree/settings/settings.html:356 #: templates/js/translated/bom.js:592 templates/js/translated/bom.js:895 #: templates/js/translated/build.js:2596 templates/js/translated/company.js:445 #: templates/js/translated/company.js:703 #: templates/js/translated/company.js:987 templates/js/translated/order.js:2030 #: templates/js/translated/order.js:2267 templates/js/translated/order.js:2845 -#: templates/js/translated/part.js:773 templates/js/translated/part.js:1223 -#: templates/js/translated/part.js:1497 templates/js/translated/part.js:2046 -#: templates/js/translated/part.js:2121 templates/js/translated/stock.js:1787 -#: templates/js/translated/stock.js:2466 templates/js/translated/stock.js:2526 +#: templates/js/translated/part.js:1044 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1768 templates/js/translated/part.js:2327 +#: templates/js/translated/part.js:2402 templates/js/translated/stock.js:1782 +#: templates/js/translated/stock.js:2461 templates/js/translated/stock.js:2521 msgid "Description" msgstr "Descripción" @@ -322,7 +325,7 @@ msgid "parent" msgstr "padre" #: InvenTree/models.py:580 InvenTree/models.py:581 -#: templates/js/translated/part.js:2055 templates/js/translated/stock.js:2475 +#: templates/js/translated/part.js:2336 templates/js/translated/stock.js:2470 msgid "Path" msgstr "Ruta" @@ -354,7 +357,7 @@ msgstr "Error de Servidor" msgid "An error has been logged by the server." msgstr "Se ha registrado un error por el servidor." -#: InvenTree/serializers.py:58 part/models.py:3468 +#: InvenTree/serializers.py:58 part/models.py:3546 msgid "Must be a valid number" msgstr "Debe ser un numero valido" @@ -421,107 +424,107 @@ msgstr "URL de imagen remota" msgid "Downloading images from remote URL is not enabled" msgstr "La descarga de imágenes desde la URL remota no está habilitada" -#: InvenTree/settings.py:639 +#: InvenTree/settings.py:642 msgid "Czech" msgstr "Checo" -#: InvenTree/settings.py:640 +#: InvenTree/settings.py:643 msgid "Danish" msgstr "Danés" -#: InvenTree/settings.py:641 +#: InvenTree/settings.py:644 msgid "German" msgstr "Alemán" -#: InvenTree/settings.py:642 +#: InvenTree/settings.py:645 msgid "Greek" msgstr "Griego" -#: InvenTree/settings.py:643 +#: InvenTree/settings.py:646 msgid "English" msgstr "Inglés" -#: InvenTree/settings.py:644 +#: InvenTree/settings.py:647 msgid "Spanish" msgstr "Español" -#: InvenTree/settings.py:645 +#: InvenTree/settings.py:648 msgid "Spanish (Mexican)" msgstr "Español (México)" -#: InvenTree/settings.py:646 +#: InvenTree/settings.py:649 msgid "Farsi / Persian" msgstr "Farsi / Persa" -#: InvenTree/settings.py:647 +#: InvenTree/settings.py:650 msgid "French" msgstr "Francés" -#: InvenTree/settings.py:648 +#: InvenTree/settings.py:651 msgid "Hebrew" msgstr "Hebreo" -#: InvenTree/settings.py:649 +#: InvenTree/settings.py:652 msgid "Hungarian" msgstr "Húngaro" -#: InvenTree/settings.py:650 +#: InvenTree/settings.py:653 msgid "Italian" msgstr "Italiano" -#: InvenTree/settings.py:651 +#: InvenTree/settings.py:654 msgid "Japanese" msgstr "Japonés" -#: InvenTree/settings.py:652 +#: InvenTree/settings.py:655 msgid "Korean" msgstr "Coreano" -#: InvenTree/settings.py:653 +#: InvenTree/settings.py:656 msgid "Dutch" msgstr "Holandés" -#: InvenTree/settings.py:654 +#: InvenTree/settings.py:657 msgid "Norwegian" msgstr "Noruego" -#: InvenTree/settings.py:655 +#: InvenTree/settings.py:658 msgid "Polish" msgstr "Polaco" -#: InvenTree/settings.py:656 +#: InvenTree/settings.py:659 msgid "Portuguese" msgstr "Portugués" -#: InvenTree/settings.py:657 +#: InvenTree/settings.py:660 msgid "Portuguese (Brazilian)" msgstr "Portugués (Brasileño)" -#: InvenTree/settings.py:658 +#: InvenTree/settings.py:661 msgid "Russian" msgstr "Ruso" -#: InvenTree/settings.py:659 +#: InvenTree/settings.py:662 msgid "Slovenian" msgstr "" -#: InvenTree/settings.py:660 +#: InvenTree/settings.py:663 msgid "Swedish" msgstr "Sueco" -#: InvenTree/settings.py:661 +#: InvenTree/settings.py:664 msgid "Thai" msgstr "Tailandés" -#: InvenTree/settings.py:662 +#: InvenTree/settings.py:665 msgid "Turkish" msgstr "Turco" -#: InvenTree/settings.py:663 +#: InvenTree/settings.py:666 msgid "Vietnamese" msgstr "Vietnamita" -#: InvenTree/settings.py:664 +#: InvenTree/settings.py:667 msgid "Chinese" msgstr "Chino" @@ -652,7 +655,7 @@ msgstr "Separar del elemento principal" msgid "Split child item" msgstr "Dividir elemento secundario" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2124 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2119 msgid "Merged stock items" msgstr "Artículos de stock combinados" @@ -756,7 +759,7 @@ msgstr "Construir órden" #: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:141 -#: templates/InvenTree/settings/sidebar.html:47 +#: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:254 users/models.py:41 msgid "Build Orders" msgstr "Construir órdenes" @@ -766,8 +769,9 @@ msgid "Build Order Reference" msgstr "Número de orden de construcción o armado" #: build/models.py:155 order/models.py:241 order/models.py:651 -#: order/models.py:941 part/admin.py:224 part/models.py:3378 +#: order/models.py:941 part/admin.py:257 part/models.py:3456 #: part/templates/part/upload_bom.html:54 +#: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 #: templates/js/translated/bom.js:729 templates/js/translated/bom.js:905 @@ -793,13 +797,15 @@ msgstr "Orden de Construcción o Armado a la que se asigna" #: build/models.py:180 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:684 #: order/models.py:1038 order/models.py:1149 order/models.py:1150 -#: part/models.py:381 part/models.py:2781 part/models.py:2894 -#: part/models.py:2909 part/models.py:2928 part/models.py:2946 -#: part/models.py:3045 part/models.py:3166 part/models.py:3258 -#: part/models.py:3343 part/models.py:3659 part/serializers.py:853 -#: part/templates/part/part_app_base.html:8 +#: part/models.py:382 part/models.py:2799 part/models.py:2912 +#: part/models.py:2972 part/models.py:2987 part/models.py:3006 +#: part/models.py:3024 part/models.py:3123 part/models.py:3244 +#: part/models.py:3336 part/models.py:3421 part/models.py:3737 +#: part/serializers.py:894 part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 +#: report/templates/report/inventree_bill_of_materials_report.html:110 +#: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_base.html:109 #: report/templates/report/inventree_po_report.html:89 #: report/templates/report/inventree_so_report.html:90 stock/serializers.py:90 @@ -819,12 +825,12 @@ msgstr "Orden de Construcción o Armado a la que se asigna" #: templates/js/translated/order.js:1172 templates/js/translated/order.js:1676 #: templates/js/translated/order.js:2252 templates/js/translated/order.js:3199 #: templates/js/translated/order.js:3595 templates/js/translated/order.js:3825 -#: templates/js/translated/part.js:1208 templates/js/translated/part.js:1280 -#: templates/js/translated/part.js:1474 templates/js/translated/pricing.js:102 -#: templates/js/translated/stock.js:618 templates/js/translated/stock.js:783 -#: templates/js/translated/stock.js:993 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2552 templates/js/translated/stock.js:2747 -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/part.js:1479 templates/js/translated/part.js:1551 +#: templates/js/translated/part.js:1745 templates/js/translated/pricing.js:102 +#: templates/js/translated/stock.js:617 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:992 templates/js/translated/stock.js:1738 +#: templates/js/translated/stock.js:2547 templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2879 msgid "Part" msgstr "Parte" @@ -890,7 +896,7 @@ msgstr "Numero de lote" msgid "Batch code for this build output" msgstr "Número de lote de este producto final" -#: build/models.py:252 order/models.py:87 part/models.py:1001 +#: build/models.py:252 order/models.py:87 part/models.py:1002 #: part/templates/part/part_base.html:318 templates/js/translated/order.js:2858 msgid "Creation Date" msgstr "Fecha de Creación" @@ -923,7 +929,7 @@ msgstr "El usuario que emitió esta orden" #: build/models.py:283 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:101 #: order/templates/order/order_base.html:185 -#: order/templates/order/sales_order_base.html:183 part/models.py:1005 +#: order/templates/order/sales_order_base.html:183 part/models.py:1006 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2658 templates/js/translated/order.js:2064 msgid "Responsible" @@ -936,7 +942,7 @@ msgstr "Usuario responsable de esta orden" #: build/models.py:289 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:188 -#: part/templates/part/part_base.html:376 stock/models.py:714 +#: part/templates/part/part_base.html:390 stock/models.py:714 #: stock/templates/stock/item_base.html:203 msgid "External Link" msgstr "Link externo" @@ -1011,8 +1017,8 @@ msgstr "Armar para asignar partes" #: templates/js/translated/order.js:107 templates/js/translated/order.js:3200 #: templates/js/translated/order.js:3502 templates/js/translated/order.js:3507 #: templates/js/translated/order.js:3602 templates/js/translated/order.js:3694 -#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 -#: templates/js/translated/stock.js:2625 +#: templates/js/translated/part.js:803 templates/js/translated/stock.js:618 +#: templates/js/translated/stock.js:783 templates/js/translated/stock.js:2620 msgid "Stock Item" msgstr "Artículo de stock" @@ -1022,12 +1028,13 @@ msgstr "Producto original de stock" #: build/models.py:1364 build/serializers.py:192 #: build/templates/build/build_base.html:85 -#: build/templates/build/detail.html:34 common/models.py:1842 +#: build/templates/build/detail.html:34 common/models.py:1849 #: order/models.py:934 order/models.py:1460 order/serializers.py:1206 -#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:223 -#: part/forms.py:40 part/models.py:3359 +#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:256 +#: part/forms.py:40 part/models.py:2919 part/models.py:3437 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 +#: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_base.html:113 #: report/templates/report/inventree_po_report.html:90 #: report/templates/report/inventree_so_report.html:91 @@ -1049,13 +1056,14 @@ msgstr "Producto original de stock" #: templates/js/translated/order.js:3201 templates/js/translated/order.js:3521 #: templates/js/translated/order.js:3608 templates/js/translated/order.js:3700 #: templates/js/translated/order.js:3847 templates/js/translated/order.js:4338 -#: templates/js/translated/part.js:1078 templates/js/translated/part.js:2568 +#: templates/js/translated/part.js:805 templates/js/translated/part.js:876 +#: templates/js/translated/part.js:1349 templates/js/translated/part.js:2849 #: templates/js/translated/pricing.js:114 #: templates/js/translated/pricing.js:207 #: templates/js/translated/pricing.js:255 -#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:490 -#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:814 -#: templates/js/translated/stock.js:2674 templates/js/translated/stock.js:2759 +#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:489 +#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:813 +#: templates/js/translated/stock.js:2669 templates/js/translated/stock.js:2754 msgid "Quantity" msgstr "Cantidad" @@ -1097,8 +1105,8 @@ msgid "Enter quantity for build output" msgstr "Ingrese la cantidad para la producción de la construcción" #: build/serializers.py:207 build/serializers.py:683 order/models.py:327 -#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:645 -#: part/serializers.py:1016 stock/models.py:574 stock/models.py:1312 +#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:686 +#: part/serializers.py:1057 stock/models.py:574 stock/models.py:1312 #: stock/serializers.py:294 msgid "Quantity must be greater than zero" msgstr "La cantidad debe ser mayor que cero" @@ -1113,7 +1121,7 @@ msgstr "Cantidad entera requerida, ya que la factura de materiales contiene part #: build/serializers.py:231 order/serializers.py:463 order/serializers.py:1210 #: stock/serializers.py:303 templates/js/translated/order.js:1545 -#: templates/js/translated/stock.js:303 templates/js/translated/stock.js:491 +#: templates/js/translated/stock.js:302 templates/js/translated/stock.js:490 msgid "Serial Numbers" msgstr "Números de serie" @@ -1146,9 +1154,10 @@ msgstr "Debe proporcionarse una lista de salidas de construcción" #: templates/js/translated/build.js:1759 templates/js/translated/order.js:1572 #: templates/js/translated/order.js:3514 templates/js/translated/order.js:3619 #: templates/js/translated/order.js:3627 templates/js/translated/order.js:3708 -#: templates/js/translated/part.js:183 templates/js/translated/stock.js:620 -#: templates/js/translated/stock.js:785 templates/js/translated/stock.js:995 -#: templates/js/translated/stock.js:1895 templates/js/translated/stock.js:2566 +#: templates/js/translated/part.js:186 templates/js/translated/part.js:804 +#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 +#: templates/js/translated/stock.js:994 templates/js/translated/stock.js:1890 +#: templates/js/translated/stock.js:2561 msgid "Location" msgstr "Unicación" @@ -1162,8 +1171,8 @@ msgstr "Ubicación para las salidas de construcción completadas" #: stock/templates/stock/item_base.html:421 #: templates/js/translated/barcode.js:237 templates/js/translated/build.js:2630 #: templates/js/translated/order.js:1681 templates/js/translated/order.js:2034 -#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1870 -#: templates/js/translated/stock.js:2643 templates/js/translated/stock.js:2775 +#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:2638 templates/js/translated/stock.js:2770 msgid "Status" msgstr "Estado" @@ -1239,8 +1248,8 @@ msgstr "La cantidad de construcción requerida aún no se ha completado" msgid "Build order has incomplete outputs" msgstr "El orden de construcción tiene salidas incompletas" -#: build/serializers.py:595 build/serializers.py:640 part/models.py:3495 -#: part/models.py:3651 +#: build/serializers.py:595 build/serializers.py:640 part/models.py:3573 +#: part/models.py:3729 msgid "BOM Item" msgstr "Item de Lista de Materiales" @@ -1406,7 +1415,7 @@ msgstr "Stock no ha sido asignado completamente a este pedido de construcción" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2670 templates/js/translated/order.js:2051 #: templates/js/translated/order.js:2382 templates/js/translated/order.js:2866 -#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1093 +#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1364 msgid "Target Date" msgstr "Fecha objetivo" @@ -1484,8 +1493,8 @@ msgstr "Partes asignadas" #: stock/templates/stock/item_base.html:168 #: templates/js/translated/build.js:1250 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:1884 -#: templates/js/translated/stock.js:2782 +#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:1879 +#: templates/js/translated/stock.js:2777 #: templates/js/translated/table_filters.js:179 #: templates/js/translated/table_filters.js:270 msgid "Batch" @@ -1617,8 +1626,8 @@ msgstr "Salidas de Trabajo Completadas" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:86 #: order/templates/order/sales_order_detail.html:140 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:210 -#: part/templates/part/part_sidebar.html:55 stock/templates/stock/item.html:117 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:233 +#: part/templates/part/part_sidebar.html:60 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" msgstr "Adjuntos" @@ -1635,7 +1644,7 @@ msgstr "Asignación completa" msgid "All untracked stock items have been allocated" msgstr "Todos los artículos de stock no rastreados han sido asignados" -#: build/templates/build/index.html:18 part/templates/part/detail.html:316 +#: build/templates/build/index.html:18 part/templates/part/detail.html:339 msgid "New Build Order" msgstr "Nueva Orden de Trabajo" @@ -1928,9 +1937,9 @@ msgstr "Copiar plantillas de parámetros de categoría" msgid "Copy category parameter templates when creating a part" msgstr "Copiar plantillas de parámetros de categoría al crear una parte" -#: common/models.py:1014 part/admin.py:41 part/models.py:3168 +#: common/models.py:1014 part/admin.py:41 part/models.py:3246 #: report/models.py:158 templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:504 +#: templates/js/translated/table_filters.js:508 msgid "Template" msgstr "Plantilla" @@ -1938,7 +1947,7 @@ msgstr "Plantilla" msgid "Parts are templates by default" msgstr "Las piezas son plantillas por defecto" -#: common/models.py:1021 part/admin.py:37 part/admin.py:229 part/models.py:957 +#: common/models.py:1021 part/admin.py:37 part/admin.py:262 part/models.py:958 #: templates/js/translated/bom.js:1595 #: templates/js/translated/table_filters.js:196 #: templates/js/translated/table_filters.js:467 @@ -1949,7 +1958,7 @@ msgstr "Montaje" msgid "Parts can be assembled from other components by default" msgstr "Las piezas pueden ser ensambladas desde otros componentes por defecto" -#: common/models.py:1028 part/admin.py:38 part/models.py:963 +#: common/models.py:1028 part/admin.py:38 part/models.py:964 #: templates/js/translated/table_filters.js:475 msgid "Component" msgstr "Componente" @@ -1958,7 +1967,7 @@ msgstr "Componente" msgid "Parts can be used as sub-components by default" msgstr "Las piezas pueden ser usadas como subcomponentes por defecto" -#: common/models.py:1035 part/admin.py:39 part/models.py:974 +#: common/models.py:1035 part/admin.py:39 part/models.py:975 msgid "Purchaseable" msgstr "Comprable" @@ -1966,7 +1975,7 @@ msgstr "Comprable" msgid "Parts are purchaseable by default" msgstr "Las piezas son comprables por defecto" -#: common/models.py:1042 part/admin.py:40 part/models.py:979 +#: common/models.py:1042 part/admin.py:40 part/models.py:980 #: templates/js/translated/table_filters.js:496 msgid "Salable" msgstr "Vendible" @@ -1975,10 +1984,10 @@ msgstr "Vendible" msgid "Parts are salable by default" msgstr "Las piezas se pueden vender por defecto" -#: common/models.py:1049 part/admin.py:42 part/models.py:969 +#: common/models.py:1049 part/admin.py:42 part/models.py:970 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:120 -#: templates/js/translated/table_filters.js:508 +#: templates/js/translated/table_filters.js:512 msgid "Trackable" msgstr "Rastreable" @@ -1986,10 +1995,10 @@ msgstr "Rastreable" msgid "Parts are trackable by default" msgstr "Las piezas son rastreables por defecto" -#: common/models.py:1056 part/admin.py:43 part/models.py:989 +#: common/models.py:1056 part/admin.py:43 part/models.py:990 #: part/templates/part/part_base.html:156 #: templates/js/translated/table_filters.js:42 -#: templates/js/translated/table_filters.js:512 +#: templates/js/translated/table_filters.js:516 msgid "Virtual" msgstr "Virtual" @@ -2417,7 +2426,7 @@ msgstr "Habilitar integración de eventos" msgid "Enable plugins to respond to internal events" msgstr "Habilitar plugins para responder a eventos internos" -#: common/models.py:1461 common/models.py:1803 +#: common/models.py:1461 common/models.py:1810 msgid "Settings key (must be unique - case insensitive" msgstr "Tecla de ajustes (debe ser única - mayúsculas y minúsculas" @@ -2749,41 +2758,50 @@ msgstr "" msgid "Display part scheduling information" msgstr "" -#: common/models.py:1778 -msgid "Table String Length" +#: common/models.py:1778 part/templates/part/detail.html:61 +#: templates/js/translated/part.js:822 +msgid "Part Stocktake" msgstr "" #: common/models.py:1779 +msgid "Display part stocktake information" +msgstr "" + +#: common/models.py:1785 +msgid "Table String Length" +msgstr "" + +#: common/models.py:1786 msgid "Maximimum length limit for strings displayed in table views" msgstr "" -#: common/models.py:1843 +#: common/models.py:1850 msgid "Price break quantity" msgstr "Cantidad de salto de precio" -#: common/models.py:1850 company/serializers.py:393 order/models.py:975 -#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1145 +#: common/models.py:1857 company/serializers.py:393 order/models.py:975 +#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1416 #: templates/js/translated/pricing.js:354 msgid "Price" msgstr "Precio" -#: common/models.py:1851 +#: common/models.py:1858 msgid "Unit price at specified quantity" msgstr "Precio unitario a la cantidad especificada" -#: common/models.py:2011 common/models.py:2189 +#: common/models.py:2018 common/models.py:2196 msgid "Endpoint" msgstr "" -#: common/models.py:2012 +#: common/models.py:2019 msgid "Endpoint at which this webhook is received" msgstr "Punto final en el que se recibe este webhook" -#: common/models.py:2021 +#: common/models.py:2028 msgid "Name for this webhook" msgstr "Nombre para este webhook" -#: common/models.py:2026 part/admin.py:36 part/models.py:984 +#: common/models.py:2033 part/admin.py:36 part/models.py:985 #: plugin/models.py:100 templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:116 #: templates/js/translated/table_filters.js:336 @@ -2791,131 +2809,133 @@ msgstr "Nombre para este webhook" msgid "Active" msgstr "Activo" -#: common/models.py:2027 +#: common/models.py:2034 msgid "Is this webhook active" msgstr "Está activo este webhook" -#: common/models.py:2041 +#: common/models.py:2048 msgid "Token" msgstr "" -#: common/models.py:2042 +#: common/models.py:2049 msgid "Token for access" msgstr "Token para el acceso" -#: common/models.py:2049 +#: common/models.py:2056 msgid "Secret" msgstr "Clave" -#: common/models.py:2050 +#: common/models.py:2057 msgid "Shared secret for HMAC" msgstr "Secreto compartido para HMAC" -#: common/models.py:2156 +#: common/models.py:2163 msgid "Message ID" msgstr "ID de mensaje" -#: common/models.py:2157 +#: common/models.py:2164 msgid "Unique identifier for this message" msgstr "Identificador único para este mensaje" -#: common/models.py:2165 +#: common/models.py:2172 msgid "Host" msgstr "" -#: common/models.py:2166 +#: common/models.py:2173 msgid "Host from which this message was received" msgstr "Servidor desde el cual se recibió este mensaje" -#: common/models.py:2173 +#: common/models.py:2180 msgid "Header" msgstr "Encabezado" -#: common/models.py:2174 +#: common/models.py:2181 msgid "Header of this message" msgstr "Encabezado del mensaje" -#: common/models.py:2180 +#: common/models.py:2187 msgid "Body" msgstr "Cuerpo" -#: common/models.py:2181 +#: common/models.py:2188 msgid "Body of this message" msgstr "Cuerpo de este mensaje" -#: common/models.py:2190 +#: common/models.py:2197 msgid "Endpoint on which this message was received" msgstr "Endpoint en el que se recibió este mensaje" -#: common/models.py:2195 +#: common/models.py:2202 msgid "Worked on" msgstr "Trabajado en" -#: common/models.py:2196 +#: common/models.py:2203 msgid "Was the work on this message finished?" msgstr "¿El trabajo en este mensaje ha terminado?" -#: common/models.py:2355 +#: common/models.py:2362 msgid "Id" msgstr "" -#: common/models.py:2361 templates/js/translated/news.js:35 +#: common/models.py:2368 templates/js/translated/news.js:35 msgid "Title" msgstr "Titulo" -#: common/models.py:2371 templates/js/translated/news.js:51 +#: common/models.py:2378 templates/js/translated/news.js:51 msgid "Published" msgstr "Publicado" -#: common/models.py:2376 templates/InvenTree/settings/plugin.html:62 +#: common/models.py:2383 templates/InvenTree/settings/plugin.html:62 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/news.js:47 msgid "Author" msgstr "Autor" -#: common/models.py:2381 templates/js/translated/news.js:43 +#: common/models.py:2388 templates/js/translated/news.js:43 msgid "Summary" msgstr "Resumen" -#: common/models.py:2386 +#: common/models.py:2393 msgid "Read" msgstr "" -#: common/models.py:2387 +#: common/models.py:2394 msgid "Was this news item read?" msgstr "" -#: common/notifications.py:293 +#: common/notifications.py:294 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:295 +#: common/notifications.py:296 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:301 +#: common/notifications.py:302 msgid "Items Received" msgstr "Artículos Recibidos" -#: common/notifications.py:303 +#: common/notifications.py:304 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:415 +#: common/notifications.py:416 msgid "Error raised by plugin" msgstr "" #: common/views.py:85 order/templates/order/order_wizard/po_upload.html:51 #: order/templates/order/purchase_order_detail.html:25 order/views.py:102 -#: part/views.py:107 templates/patterns/wizard/upload.html:37 +#: part/templates/part/import_wizard/part_upload.html:58 part/views.py:109 +#: templates/patterns/wizard/upload.html:37 msgid "Upload File" msgstr "Subir Archivo" #: common/views.py:86 order/templates/order/order_wizard/match_fields.html:52 #: order/views.py:103 #: part/templates/part/import_wizard/ajax_match_fields.html:45 -#: part/views.py:108 templates/patterns/wizard/match_fields.html:51 +#: part/templates/part/import_wizard/match_fields.html:52 part/views.py:110 +#: templates/patterns/wizard/match_fields.html:51 msgid "Match Fields" msgstr "Coincidir Campos" @@ -2934,7 +2954,9 @@ msgstr "Partes importadas" #: common/views.py:509 order/templates/order/order_wizard/match_fields.html:27 #: order/templates/order/order_wizard/match_parts.html:19 #: order/templates/order/order_wizard/po_upload.html:49 +#: part/templates/part/import_wizard/match_fields.html:27 #: part/templates/part/import_wizard/match_references.html:19 +#: part/templates/part/import_wizard/part_upload.html:56 #: templates/patterns/wizard/match_fields.html:26 #: templates/patterns/wizard/upload.html:35 msgid "Previous Step" @@ -2995,7 +3017,7 @@ msgstr "Punto de contacto" msgid "Link to external company information" msgstr "Enlace a información externa de la empresa" -#: company/models.py:140 part/models.py:878 +#: company/models.py:140 part/models.py:879 msgid "Image" msgstr "Imágen" @@ -3028,8 +3050,8 @@ msgid "Does this company manufacture parts?" msgstr "¿Esta empresa fabrica piezas?" #: company/models.py:153 company/serializers.py:399 -#: company/templates/company/company_base.html:107 part/models.py:2762 -#: part/serializers.py:154 part/serializers.py:182 stock/serializers.py:182 +#: company/templates/company/company_base.html:107 part/models.py:2780 +#: part/serializers.py:156 part/serializers.py:184 stock/serializers.py:182 #: templates/InvenTree/settings/pricing.html:64 msgid "Currency" msgstr "Moneda" @@ -3055,12 +3077,12 @@ msgstr "Seleccionar pieza" #: templates/js/translated/company.js:433 #: templates/js/translated/company.js:534 #: templates/js/translated/company.js:669 -#: templates/js/translated/company.js:957 templates/js/translated/part.js:238 +#: templates/js/translated/company.js:957 templates/js/translated/part.js:241 #: templates/js/translated/table_filters.js:439 msgid "Manufacturer" msgstr "Fabricante" -#: company/models.py:269 templates/js/translated/part.js:239 +#: company/models.py:269 templates/js/translated/part.js:242 msgid "Select manufacturer" msgstr "Seleccionar fabricante" @@ -3070,11 +3092,11 @@ msgstr "Seleccionar fabricante" #: templates/js/translated/company.js:533 #: templates/js/translated/company.js:685 #: templates/js/translated/company.js:976 templates/js/translated/order.js:2286 -#: templates/js/translated/part.js:249 templates/js/translated/part.js:1067 +#: templates/js/translated/part.js:252 templates/js/translated/part.js:1338 msgid "MPN" msgstr "" -#: company/models.py:276 templates/js/translated/part.js:250 +#: company/models.py:276 templates/js/translated/part.js:253 msgid "Manufacturer Part Number" msgstr "Número de Parte del Fabricante" @@ -3100,8 +3122,8 @@ msgstr "Nombre del parámetro" #: company/models.py:370 #: report/templates/report/inventree_test_report_base.html:95 #: stock/models.py:2156 templates/js/translated/company.js:582 -#: templates/js/translated/company.js:800 templates/js/translated/part.js:889 -#: templates/js/translated/stock.js:1399 +#: templates/js/translated/company.js:800 templates/js/translated/part.js:1160 +#: templates/js/translated/stock.js:1398 msgid "Value" msgstr "Valor" @@ -3109,10 +3131,10 @@ msgstr "Valor" msgid "Parameter value" msgstr "Valor del parámetro" -#: company/models.py:377 part/admin.py:26 part/models.py:951 -#: part/models.py:3128 part/templates/part/part_base.html:286 -#: templates/InvenTree/settings/settings.html:349 -#: templates/js/translated/company.js:806 templates/js/translated/part.js:895 +#: company/models.py:377 part/admin.py:26 part/models.py:952 +#: part/models.py:3206 part/templates/part/part_base.html:286 +#: templates/InvenTree/settings/settings.html:350 +#: templates/js/translated/company.js:806 templates/js/translated/part.js:1166 msgid "Units" msgstr "Unidades" @@ -3132,24 +3154,24 @@ msgstr "La parte vinculada del fabricante debe hacer referencia a la misma pieza #: templates/js/translated/company.js:304 #: templates/js/translated/company.js:437 #: templates/js/translated/company.js:930 templates/js/translated/order.js:2017 -#: templates/js/translated/part.js:219 templates/js/translated/part.js:1035 +#: templates/js/translated/part.js:222 templates/js/translated/part.js:1306 #: templates/js/translated/pricing.js:231 #: templates/js/translated/table_filters.js:443 msgid "Supplier" msgstr "Proveedor" -#: company/models.py:498 templates/js/translated/part.js:220 +#: company/models.py:498 templates/js/translated/part.js:223 msgid "Select supplier" msgstr "Seleccionar proveedor" #: company/models.py:503 company/templates/company/supplier_part.html:146 #: part/bom.py:253 part/bom.py:281 templates/js/translated/company.js:303 -#: templates/js/translated/order.js:2273 templates/js/translated/part.js:230 -#: templates/js/translated/part.js:1053 templates/js/translated/pricing.js:243 +#: templates/js/translated/order.js:2273 templates/js/translated/part.js:233 +#: templates/js/translated/part.js:1324 templates/js/translated/pricing.js:243 msgid "SKU" msgstr "" -#: company/models.py:504 templates/js/translated/part.js:231 +#: company/models.py:504 templates/js/translated/part.js:234 msgid "Supplier stock keeping unit" msgstr "Unidad de mantenimiento de stock de proveedores" @@ -3166,24 +3188,25 @@ msgid "Supplier part description" msgstr "Descripción de la parte del proveedor" #: company/models.py:528 company/templates/company/supplier_part.html:181 -#: part/admin.py:225 part/models.py:3381 part/templates/part/upload_bom.html:59 +#: part/admin.py:258 part/models.py:3459 part/templates/part/upload_bom.html:59 +#: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:397 msgid "Note" msgstr "Nota" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "base cost" msgstr "costo base" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "Minimum charge (e.g. stocking fee)" msgstr "Cargo mínimo (p. ej., cuota de almacenamiento)" #: company/models.py:534 company/templates/company/supplier_part.html:167 #: stock/admin.py:101 stock/models.py:682 #: stock/templates/stock/item_base.html:243 -#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2016 +#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2011 msgid "Packaging" msgstr "Paquetes" @@ -3196,7 +3219,7 @@ msgstr "Embalaje de partes" #: templates/js/translated/company.js:997 templates/js/translated/order.js:826 #: templates/js/translated/order.js:1253 templates/js/translated/order.js:1508 #: templates/js/translated/order.js:2317 templates/js/translated/order.js:2334 -#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1137 +#: templates/js/translated/part.js:1356 templates/js/translated/part.js:1408 msgid "Pack Quantity" msgstr "" @@ -3204,7 +3227,7 @@ msgstr "" msgid "Unit quantity supplied in a single pack" msgstr "" -#: company/models.py:544 part/models.py:1863 +#: company/models.py:544 part/models.py:1869 msgid "multiple" msgstr "múltiple" @@ -3216,8 +3239,8 @@ msgstr "Pedido múltiple" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:1118 templates/js/translated/build.js:1883 -#: templates/js/translated/build.js:2770 templates/js/translated/part.js:623 -#: templates/js/translated/part.js:626 +#: templates/js/translated/build.js:2770 templates/js/translated/part.js:626 +#: templates/js/translated/part.js:629 #: templates/js/translated/table_filters.js:206 msgid "Available" msgstr "Disponible" @@ -3300,7 +3323,7 @@ msgstr "Borrar imagen" #: stock/templates/stock/item_base.html:399 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:429 templates/js/translated/order.js:2827 -#: templates/js/translated/stock.js:2607 +#: templates/js/translated/stock.js:2602 #: templates/js/translated/table_filters.js:447 msgid "Customer" msgstr "Cliente" @@ -3314,7 +3337,7 @@ msgid "Phone" msgstr "Teléfono" #: company/templates/company/company_base.html:206 -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:525 msgid "Remove Image" msgstr "Quitar imagen" @@ -3323,19 +3346,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:209 -#: part/templates/part/part_base.html:514 +#: part/templates/part/part_base.html:528 #: templates/InvenTree/settings/user.html:87 #: templates/InvenTree/settings/user.html:149 msgid "Remove" msgstr "Eliminar" #: company/templates/company/company_base.html:238 -#: part/templates/part/part_base.html:543 +#: part/templates/part/part_base.html:557 msgid "Upload Image" msgstr "Cargar Imagen" #: company/templates/company/company_base.html:253 -#: part/templates/part/part_base.html:598 +#: part/templates/part/part_base.html:612 msgid "Download Image" msgstr "Descargar imagen" @@ -3351,7 +3374,7 @@ msgstr "Crear nueva parte del proveedor" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:357 +#: part/templates/part/detail.html:380 msgid "New Supplier Part" msgstr "Nueva Parte de Proveedor" @@ -3380,7 +3403,7 @@ msgstr "Partes del fabricante" msgid "Create new manufacturer part" msgstr "Crear nueva pieza de fabricante" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:387 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:410 msgid "New Manufacturer Part" msgstr "Nueva pieza de fabricante" @@ -3394,9 +3417,9 @@ msgstr "Stock del Proveedor" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:35 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:35 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:200 -#: templates/InvenTree/settings/sidebar.html:49 +#: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:293 templates/navbar.html:50 #: users/models.py:42 msgid "Purchase Orders" @@ -3417,9 +3440,9 @@ msgstr "Nueva orden de compra" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:39 +#: part/templates/part/detail.html:130 part/templates/part/part_sidebar.html:39 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:220 -#: templates/InvenTree/settings/sidebar.html:51 +#: templates/InvenTree/settings/sidebar.html:53 #: templates/js/translated/search.js:317 templates/navbar.html:61 #: users/models.py:43 msgid "Sales Orders" @@ -3451,7 +3474,7 @@ msgstr "Fabricantes" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:221 -#: part/templates/part/detail.html:87 part/templates/part/part_base.html:85 +#: part/templates/part/detail.html:110 part/templates/part/part_base.html:85 msgid "Order part" msgstr "Pedir ítem" @@ -3482,28 +3505,28 @@ msgid "Suppliers" msgstr "Proveedores" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:368 +#: part/templates/part/detail.html:391 msgid "Delete supplier parts" msgstr "Eliminar partes del proveedor" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:369 part/templates/part/detail.html:399 -#: templates/js/translated/forms.js:455 templates/js/translated/helpers.js:38 -#: templates/js/translated/part.js:351 templates/js/translated/stock.js:188 -#: users/models.py:224 +#: part/templates/part/detail.html:392 part/templates/part/detail.html:422 +#: templates/js/translated/forms.js:458 templates/js/translated/helpers.js:38 +#: templates/js/translated/part.js:354 templates/js/translated/stock.js:187 +#: users/models.py:225 msgid "Delete" msgstr "Eliminar" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:184 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:207 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "Parámetros" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:189 +#: part/templates/part/detail.html:212 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:62 msgid "New Parameter" @@ -3514,7 +3537,7 @@ msgid "Delete parameters" msgstr "Eliminar parámetro" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:825 +#: part/templates/part/detail.html:865 msgid "Add Parameter" msgstr "Añadir parámetro" @@ -3538,7 +3561,7 @@ msgstr "Elementos de Stock Asignados" #: company/templates/company/supplier_part.html:24 stock/models.py:665 #: stock/templates/stock/item_base.html:236 #: templates/js/translated/company.js:946 templates/js/translated/order.js:1173 -#: templates/js/translated/stock.js:1974 +#: templates/js/translated/stock.js:1969 msgid "Supplier Part" msgstr "Ítems de Proveedor" @@ -3578,7 +3601,7 @@ msgstr "" #: company/templates/company/supplier_part.html:56 #: company/templates/company/supplier_part.html:57 #: company/templates/company/supplier_part.html:222 -#: part/templates/part/detail.html:88 +#: part/templates/part/detail.html:111 msgid "Order Part" msgstr "Pedir ítem" @@ -3630,7 +3653,7 @@ msgstr "Crear nuevo artículo de stock" #: company/templates/company/supplier_part.html:204 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:198 -#: templates/js/translated/stock.js:467 +#: templates/js/translated/stock.js:466 msgid "New Stock Item" msgstr "Nuevo artículo de stock" @@ -3662,10 +3685,10 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 -#: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/part.js:777 templates/js/translated/part.js:1378 -#: templates/js/translated/part.js:1534 templates/js/translated/stock.js:994 -#: templates/js/translated/stock.js:1799 templates/navbar.html:31 +#: templates/InvenTree/settings/sidebar.html:47 +#: templates/js/translated/part.js:1048 templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1805 templates/js/translated/stock.js:993 +#: templates/js/translated/stock.js:1794 templates/navbar.html:31 msgid "Stock" msgstr "Inventario" @@ -3680,7 +3703,7 @@ msgstr "Precio de pieza del proveedor" #: company/templates/company/supplier_part_navbar.html:29 #: part/templates/part/part_sidebar.html:30 -#: templates/InvenTree/settings/sidebar.html:35 +#: templates/InvenTree/settings/sidebar.html:37 msgid "Pricing" msgstr "Precios" @@ -3692,7 +3715,7 @@ msgstr "Precios" #: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:155 templates/js/translated/search.js:225 -#: templates/js/translated/stock.js:2484 users/models.py:40 +#: templates/js/translated/stock.js:2479 users/models.py:40 msgid "Stock Items" msgstr "Elementos de stock" @@ -3801,9 +3824,9 @@ msgstr "" #: stock/templates/stock/item_base.html:182 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:619 templates/js/translated/order.js:1174 -#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1012 -#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1954 -#: templates/js/translated/stock.js:2588 +#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1283 +#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1949 +#: templates/js/translated/stock.js:2583 msgid "Purchase Order" msgstr "Orden de compra" @@ -3973,7 +3996,7 @@ msgstr "Ítems de Proveedor" #: order/models.py:1046 order/templates/order/order_base.html:178 #: templates/js/translated/order.js:1679 templates/js/translated/order.js:2404 -#: templates/js/translated/part.js:1129 templates/js/translated/part.js:1161 +#: templates/js/translated/part.js:1400 templates/js/translated/part.js:1432 #: templates/js/translated/table_filters.js:358 msgid "Received" msgstr "Recibido" @@ -3984,7 +4007,7 @@ msgstr "Número de artículos recibidos" #: order/models.py:1054 stock/models.py:800 stock/serializers.py:173 #: stock/templates/stock/item_base.html:189 -#: templates/js/translated/stock.js:2005 +#: templates/js/translated/stock.js:2000 msgid "Purchase Price" msgstr "Precio de Compra" @@ -4350,18 +4373,21 @@ msgstr "No se ha podido calcular el costo total" #: order/templates/order/order_wizard/match_fields.html:9 #: part/templates/part/import_wizard/ajax_match_fields.html:9 +#: part/templates/part/import_wizard/match_fields.html:9 #: templates/patterns/wizard/match_fields.html:8 msgid "Missing selections for the following required columns" msgstr "Faltan selecciones para las siguientes columnas requeridas" #: order/templates/order/order_wizard/match_fields.html:20 #: part/templates/part/import_wizard/ajax_match_fields.html:20 +#: part/templates/part/import_wizard/match_fields.html:20 #: templates/patterns/wizard/match_fields.html:19 msgid "Duplicate selections found, see below. Fix them then retry submitting." msgstr "Se han encontrado selecciones duplicadas, vea a continuación. Arreglarlas y vuelva a intentar enviarlas." #: order/templates/order/order_wizard/match_fields.html:29 #: order/templates/order/order_wizard/match_parts.html:21 +#: part/templates/part/import_wizard/match_fields.html:29 #: part/templates/part/import_wizard/match_references.html:21 #: templates/patterns/wizard/match_fields.html:28 msgid "Submit Selections" @@ -4369,18 +4395,21 @@ msgstr "Enviar selecciones" #: order/templates/order/order_wizard/match_fields.html:35 #: part/templates/part/import_wizard/ajax_match_fields.html:28 +#: part/templates/part/import_wizard/match_fields.html:35 #: templates/patterns/wizard/match_fields.html:34 msgid "File Fields" msgstr "Campos de archivo" #: order/templates/order/order_wizard/match_fields.html:42 #: part/templates/part/import_wizard/ajax_match_fields.html:35 +#: part/templates/part/import_wizard/match_fields.html:42 #: templates/patterns/wizard/match_fields.html:41 msgid "Remove column" msgstr "Eliminar columna" #: order/templates/order/order_wizard/match_fields.html:60 #: part/templates/part/import_wizard/ajax_match_fields.html:53 +#: part/templates/part/import_wizard/match_fields.html:60 #: templates/patterns/wizard/match_fields.html:59 msgid "Duplicate selection" msgstr "Duplicar selección" @@ -4389,12 +4418,13 @@ msgstr "Duplicar selección" #: order/templates/order/order_wizard/match_parts.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: 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:102 templates/js/translated/build.js:485 #: templates/js/translated/build.js:641 templates/js/translated/build.js:2088 #: templates/js/translated/order.js:1122 templates/js/translated/order.js:1624 -#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:657 -#: templates/js/translated/stock.js:825 +#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:824 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "Eliminar fila" @@ -4429,6 +4459,7 @@ msgstr "El pedido ya ha sido procesado. Los archivos no se pueden cargar." #: order/templates/order/order_wizard/po_upload.html:27 #: part/templates/part/import_wizard/ajax_part_upload.html:10 +#: part/templates/part/import_wizard/part_upload.html:26 #: templates/patterns/wizard/upload.html:13 #, python-format msgid "Step %(step)s of %(count)s" @@ -4567,12 +4598,12 @@ msgstr "Actualizado el precio unitario de {part} a {price}" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "Actualizado el precio unitario de {part} a {price} y la cantidad a {qty}" -#: part/admin.py:19 part/admin.py:219 part/models.py:3262 stock/admin.py:84 +#: part/admin.py:19 part/admin.py:252 part/models.py:3340 stock/admin.py:84 #: templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "ID de Parte" -#: part/admin.py:20 part/admin.py:221 part/models.py:3266 stock/admin.py:85 +#: part/admin.py:20 part/admin.py:254 part/models.py:3344 stock/admin.py:85 msgid "Part Name" msgstr "" @@ -4580,32 +4611,32 @@ msgstr "" msgid "Part Description" msgstr "" -#: part/admin.py:22 part/models.py:852 part/templates/part/part_base.html:272 -#: templates/js/translated/part.js:763 templates/js/translated/part.js:1491 -#: templates/js/translated/stock.js:1765 +#: part/admin.py:22 part/models.py:853 part/templates/part/part_base.html:272 +#: templates/js/translated/part.js:1034 templates/js/translated/part.js:1762 +#: templates/js/translated/stock.js:1760 msgid "IPN" msgstr "" -#: part/admin.py:23 part/models.py:860 part/templates/part/part_base.html:279 -#: report/models.py:171 templates/js/translated/part.js:768 +#: part/admin.py:23 part/models.py:861 part/templates/part/part_base.html:279 +#: report/models.py:171 templates/js/translated/part.js:1039 msgid "Revision" msgstr "Revisión" -#: part/admin.py:24 part/admin.py:145 part/models.py:838 +#: part/admin.py:24 part/admin.py:178 part/models.py:839 #: part/templates/part/category.html:87 part/templates/part/part_base.html:300 msgid "Keywords" msgstr "Palabras claves" -#: part/admin.py:28 part/admin.py:139 +#: part/admin.py:28 part/admin.py:172 #: templates/js/translated/model_renderers.js:338 msgid "Category ID" msgstr "ID de Categoría" -#: part/admin.py:29 part/admin.py:140 +#: part/admin.py:29 part/admin.py:173 msgid "Category Name" msgstr "" -#: part/admin.py:30 part/admin.py:144 +#: part/admin.py:30 part/admin.py:177 msgid "Default Location ID" msgstr "" @@ -4613,7 +4644,7 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:33 part/models.py:944 part/templates/part/part_base.html:206 +#: part/admin.py:33 part/models.py:945 part/templates/part/part_base.html:206 msgid "Minimum Stock" msgstr "Stock mínimo" @@ -4625,8 +4656,8 @@ msgstr "En Stock" #: part/admin.py:48 part/bom.py:145 part/templates/part/part_base.html:213 #: templates/js/translated/bom.js:1156 templates/js/translated/build.js:1935 -#: templates/js/translated/part.js:613 templates/js/translated/part.js:633 -#: templates/js/translated/part.js:1381 templates/js/translated/part.js:1559 +#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 +#: templates/js/translated/part.js:1652 templates/js/translated/part.js:1830 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "En pedido" @@ -4642,115 +4673,115 @@ msgid "Allocated" msgstr "Asignadas" #: part/admin.py:51 part/templates/part/part_base.html:244 -#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 -#: templates/js/translated/part.js:1385 templates/js/translated/part.js:1566 +#: templates/js/translated/part.js:619 templates/js/translated/part.js:639 +#: templates/js/translated/part.js:1656 templates/js/translated/part.js:1837 msgid "Building" msgstr "En construcción" -#: part/admin.py:52 part/models.py:2846 +#: part/admin.py:52 part/models.py:2864 msgid "Minimum Cost" msgstr "" -#: part/admin.py:53 part/models.py:2852 +#: part/admin.py:53 part/models.py:2870 msgid "Maximum Cost" msgstr "" -#: part/admin.py:142 part/admin.py:216 stock/admin.py:26 stock/admin.py:98 +#: part/admin.py:175 part/admin.py:249 stock/admin.py:26 stock/admin.py:98 msgid "Parent ID" msgstr "" -#: part/admin.py:143 part/admin.py:218 stock/admin.py:27 +#: part/admin.py:176 part/admin.py:251 stock/admin.py:27 msgid "Parent Name" msgstr "" -#: part/admin.py:146 part/templates/part/category.html:81 +#: part/admin.py:179 part/templates/part/category.html:81 #: part/templates/part/category.html:94 msgid "Category Path" msgstr "Ruta de Categoría" -#: part/admin.py:149 part/models.py:382 part/templates/part/cat_link.html:3 +#: part/admin.py:182 part/models.py:383 part/templates/part/cat_link.html:3 #: part/templates/part/category.html:23 part/templates/part/category.html:134 #: part/templates/part/category.html:154 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:84 -#: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:2065 templates/js/translated/search.js:146 +#: templates/InvenTree/settings/sidebar.html:43 +#: templates/js/translated/part.js:2346 templates/js/translated/search.js:146 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "Partes" -#: part/admin.py:211 +#: part/admin.py:244 msgid "BOM Level" msgstr "" -#: part/admin.py:213 +#: part/admin.py:246 msgid "BOM Item ID" msgstr "" -#: part/admin.py:217 +#: part/admin.py:250 msgid "Parent IPN" msgstr "" -#: part/admin.py:220 part/models.py:3270 +#: part/admin.py:253 part/models.py:3348 msgid "Part IPN" msgstr "" -#: part/admin.py:226 templates/js/translated/pricing.js:91 +#: part/admin.py:259 templates/js/translated/pricing.js:91 #: templates/js/translated/pricing.js:732 msgid "Minimum Price" msgstr "" -#: part/admin.py:227 templates/js/translated/pricing.js:86 +#: part/admin.py:260 templates/js/translated/pricing.js:86 #: templates/js/translated/pricing.js:740 msgid "Maximum Price" msgstr "" -#: part/api.py:536 +#: part/api.py:538 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:556 +#: part/api.py:558 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:574 +#: part/api.py:576 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:660 +#: part/api.py:662 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:818 +#: part/api.py:820 msgid "Valid" msgstr "Válido" -#: part/api.py:819 +#: part/api.py:821 msgid "Validate entire Bill of Materials" msgstr "Validación de Lista de Materiales" -#: part/api.py:825 +#: part/api.py:827 msgid "This option must be selected" msgstr "Esta opción debe ser seleccionada" -#: part/api.py:1265 +#: part/api.py:1281 msgid "Must be greater than zero" msgstr "Debe ser mayor que 0" -#: part/api.py:1269 +#: part/api.py:1285 msgid "Must be a valid quantity" msgstr "Debe ser una cantidad válida" -#: part/api.py:1284 +#: part/api.py:1300 msgid "Specify location for initial part stock" msgstr "Especificar ubicación para el stock inicial de piezas" -#: part/api.py:1315 part/api.py:1319 part/api.py:1334 part/api.py:1338 +#: part/api.py:1331 part/api.py:1335 part/api.py:1350 part/api.py:1354 msgid "This field is required" msgstr "Este campo es obligatorio" -#: part/bom.py:142 part/models.py:116 part/models.py:887 -#: part/templates/part/category.html:109 part/templates/part/part_base.html:360 +#: part/bom.py:142 part/models.py:116 part/models.py:888 +#: part/templates/part/category.html:109 part/templates/part/part_base.html:374 msgid "Default Location" msgstr "Ubicación Predeterminada" @@ -4801,7 +4832,7 @@ msgstr "" msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:159 part/models.py:3211 part/templates/part/category.html:16 +#: part/models.py:159 part/models.py:3289 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "Categoría de parte" @@ -4812,423 +4843,459 @@ msgstr "Categoría de parte" msgid "Part Categories" msgstr "Categorías de parte" -#: part/models.py:468 +#: part/models.py:469 msgid "Invalid choice for parent part" msgstr "Opción no válida para la parte principal" -#: part/models.py:538 part/models.py:550 +#: part/models.py:539 part/models.py:551 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "La parte '{p1}' se utiliza en BOM para '{p2}' (recursivo)" -#: part/models.py:640 +#: part/models.py:641 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:771 +#: part/models.py:772 msgid "Duplicate IPN not allowed in part settings" msgstr "IPN duplicado no permitido en la configuración de partes" -#: part/models.py:776 +#: part/models.py:777 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:790 +#: part/models.py:791 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:808 part/models.py:3267 +#: part/models.py:809 part/models.py:3345 msgid "Part name" msgstr "Nombre de la pieza" -#: part/models.py:815 +#: part/models.py:816 msgid "Is Template" msgstr "Es plantilla" -#: part/models.py:816 +#: part/models.py:817 msgid "Is this part a template part?" msgstr "¿Es esta parte una parte de la plantilla?" -#: part/models.py:826 +#: part/models.py:827 msgid "Is this part a variant of another part?" msgstr "¿Es esta parte una variante de otra parte?" -#: part/models.py:827 +#: part/models.py:828 msgid "Variant Of" msgstr "Variante de" -#: part/models.py:833 +#: part/models.py:834 msgid "Part description" msgstr "Descripción de la pieza" -#: part/models.py:839 +#: part/models.py:840 msgid "Part keywords to improve visibility in search results" msgstr "Palabras clave para mejorar la visibilidad en los resultados de búsqueda" -#: part/models.py:846 part/models.py:2966 part/models.py:3210 +#: part/models.py:847 part/models.py:3044 part/models.py:3288 #: part/templates/part/part_base.html:263 -#: templates/InvenTree/settings/settings.html:229 +#: templates/InvenTree/settings/settings.html:230 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1513 templates/js/translated/part.js:1770 +#: templates/js/translated/part.js:1784 templates/js/translated/part.js:2051 msgid "Category" msgstr "Categoría" -#: part/models.py:847 +#: part/models.py:848 msgid "Part category" msgstr "Categoría de parte" -#: part/models.py:853 +#: part/models.py:854 msgid "Internal Part Number" msgstr "Número de parte interna" -#: part/models.py:859 +#: part/models.py:860 msgid "Part revision or version number" msgstr "Revisión de parte o número de versión" -#: part/models.py:885 +#: part/models.py:886 msgid "Where is this item normally stored?" msgstr "¿Dónde se almacena este elemento normalmente?" -#: part/models.py:930 part/templates/part/part_base.html:369 +#: part/models.py:931 part/templates/part/part_base.html:383 msgid "Default Supplier" msgstr "Proveedor por defecto" -#: part/models.py:931 +#: part/models.py:932 msgid "Default supplier part" msgstr "Parte de proveedor predeterminada" -#: part/models.py:938 +#: part/models.py:939 msgid "Default Expiry" msgstr "Expiración por defecto" -#: part/models.py:939 +#: part/models.py:940 msgid "Expiry time (in days) for stock items of this part" msgstr "Tiempo de expiración (en días) para los artículos de stock de esta parte" -#: part/models.py:945 +#: part/models.py:946 msgid "Minimum allowed stock level" msgstr "Nivel mínimo de stock permitido" -#: part/models.py:952 +#: part/models.py:953 msgid "Stock keeping units for this part" msgstr "Unidades de mantenimiento de stock para esta parte" -#: part/models.py:958 +#: part/models.py:959 msgid "Can this part be built from other parts?" msgstr "¿Se puede construir esta pieza a partir de otras piezas?" -#: part/models.py:964 +#: part/models.py:965 msgid "Can this part be used to build other parts?" msgstr "¿Se puede utilizar esta pieza para construir otras partes?" -#: part/models.py:970 +#: part/models.py:971 msgid "Does this part have tracking for unique items?" msgstr "¿Esta parte tiene seguimiento de objetos únicos?" -#: part/models.py:975 +#: part/models.py:976 msgid "Can this part be purchased from external suppliers?" msgstr "¿Se puede comprar esta pieza a proveedores externos?" -#: part/models.py:980 +#: part/models.py:981 msgid "Can this part be sold to customers?" msgstr "¿Se puede vender esta pieza a los clientes?" -#: part/models.py:985 +#: part/models.py:986 msgid "Is this part active?" msgstr "¿Está activa esta parte?" -#: part/models.py:990 +#: part/models.py:991 msgid "Is this a virtual part, such as a software product or license?" msgstr "¿Es ésta una parte virtual, como un producto de software o una licencia?" -#: part/models.py:992 +#: part/models.py:993 msgid "Part notes" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "BOM checksum" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "Stored BOM checksum" msgstr "Suma de control BOM almacenada" -#: part/models.py:997 +#: part/models.py:998 msgid "BOM checked by" msgstr "BOM comprobado por" -#: part/models.py:999 +#: part/models.py:1000 msgid "BOM checked date" msgstr "Fecha BOM comprobada" -#: part/models.py:1003 +#: part/models.py:1004 msgid "Creation User" msgstr "Creación de Usuario" -#: part/models.py:1863 +#: part/models.py:1010 part/templates/part/part_base.html:345 +#: stock/templates/stock/item_base.html:445 +#: templates/js/translated/part.js:1901 +msgid "Last Stocktake" +msgstr "Último inventario" + +#: part/models.py:1869 msgid "Sell multiple" msgstr "Vender múltiples" -#: part/models.py:2763 +#: part/models.py:2781 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:2768 +#: part/models.py:2786 templates/js/translated/part.js:806 msgid "Updated" msgstr "" -#: part/models.py:2769 +#: part/models.py:2787 msgid "Timestamp of last pricing update" msgstr "" -#: part/models.py:2786 +#: part/models.py:2804 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:2787 +#: part/models.py:2805 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:2792 +#: part/models.py:2810 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:2793 +#: part/models.py:2811 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:2798 +#: part/models.py:2816 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:2799 +#: part/models.py:2817 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:2804 +#: part/models.py:2822 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:2805 +#: part/models.py:2823 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:2810 +#: part/models.py:2828 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:2811 +#: part/models.py:2829 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:2816 +#: part/models.py:2834 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:2817 +#: part/models.py:2835 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:2822 +#: part/models.py:2840 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:2823 +#: part/models.py:2841 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:2828 +#: part/models.py:2846 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:2829 +#: part/models.py:2847 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:2834 +#: part/models.py:2852 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:2835 +#: part/models.py:2853 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:2840 +#: part/models.py:2858 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:2841 +#: part/models.py:2859 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:2847 +#: part/models.py:2865 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:2853 +#: part/models.py:2871 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:2858 +#: part/models.py:2876 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:2859 +#: part/models.py:2877 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:2864 +#: part/models.py:2882 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:2865 +#: part/models.py:2883 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:2870 +#: part/models.py:2888 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:2871 +#: part/models.py:2889 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:2876 +#: part/models.py:2894 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:2877 +#: part/models.py:2895 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3013 +#: part/models.py:2913 +msgid "Part for stocktake" +msgstr "" + +#: part/models.py:2920 +msgid "Total available stock at time of stocktake" +msgstr "" + +#: part/models.py:2924 part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:63 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:2043 templates/js/translated/part.js:887 +#: templates/js/translated/pricing.js:537 +#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2511 +msgid "Date" +msgstr "Fecha" + +#: part/models.py:2925 +msgid "Date stocktake was performed" +msgstr "" + +#: part/models.py:2933 +msgid "Additional notes" +msgstr "" + +#: part/models.py:2941 +msgid "User who performed this stocktake" +msgstr "" + +#: part/models.py:3091 msgid "Test templates can only be created for trackable parts" msgstr "Las plantillas de prueba sólo pueden ser creadas para partes rastreables" -#: part/models.py:3030 +#: part/models.py:3108 msgid "Test with this name already exists for this part" msgstr "Ya existe una prueba con este nombre para esta parte" -#: part/models.py:3050 templates/js/translated/part.js:2116 -#: templates/js/translated/stock.js:1379 +#: part/models.py:3128 templates/js/translated/part.js:2397 +#: templates/js/translated/stock.js:1378 msgid "Test Name" msgstr "Nombre de prueba" -#: part/models.py:3051 +#: part/models.py:3129 msgid "Enter a name for the test" msgstr "Introduzca un nombre para la prueba" -#: part/models.py:3056 +#: part/models.py:3134 msgid "Test Description" msgstr "Descripción de prueba" -#: part/models.py:3057 +#: part/models.py:3135 msgid "Enter description for this test" msgstr "Introduce la descripción para esta prueba" -#: part/models.py:3062 templates/js/translated/part.js:2125 +#: part/models.py:3140 templates/js/translated/part.js:2406 #: templates/js/translated/table_filters.js:322 msgid "Required" msgstr "Requerido" -#: part/models.py:3063 +#: part/models.py:3141 msgid "Is this test required to pass?" msgstr "¿Es necesario pasar esta prueba?" -#: part/models.py:3068 templates/js/translated/part.js:2133 +#: part/models.py:3146 templates/js/translated/part.js:2414 msgid "Requires Value" msgstr "Requiere valor" -#: part/models.py:3069 +#: part/models.py:3147 msgid "Does this test require a value when adding a test result?" msgstr "¿Esta prueba requiere un valor al agregar un resultado de la prueba?" -#: part/models.py:3074 templates/js/translated/part.js:2140 +#: part/models.py:3152 templates/js/translated/part.js:2421 msgid "Requires Attachment" msgstr "Adjunto obligatorio" -#: part/models.py:3075 +#: part/models.py:3153 msgid "Does this test require a file attachment when adding a test result?" msgstr "¿Esta prueba requiere un archivo adjunto al agregar un resultado de la prueba?" -#: part/models.py:3116 +#: part/models.py:3194 msgid "Parameter template name must be unique" msgstr "El nombre de parámetro en la plantilla tiene que ser único" -#: part/models.py:3124 +#: part/models.py:3202 msgid "Parameter Name" msgstr "Nombre de Parámetro" -#: part/models.py:3128 +#: part/models.py:3206 msgid "Parameter Units" msgstr "Unidad del Parámetro" -#: part/models.py:3133 +#: part/models.py:3211 msgid "Parameter description" msgstr "" -#: part/models.py:3166 +#: part/models.py:3244 msgid "Parent Part" msgstr "Parte principal" -#: part/models.py:3168 part/models.py:3216 part/models.py:3217 -#: templates/InvenTree/settings/settings.html:224 +#: part/models.py:3246 part/models.py:3294 part/models.py:3295 +#: templates/InvenTree/settings/settings.html:225 msgid "Parameter Template" msgstr "Plantilla de parámetro" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Data" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Parameter Value" msgstr "Valor del parámetro" -#: part/models.py:3221 templates/InvenTree/settings/settings.html:233 +#: part/models.py:3299 templates/InvenTree/settings/settings.html:234 msgid "Default Value" msgstr "Valor predeterminado" -#: part/models.py:3222 +#: part/models.py:3300 msgid "Default Parameter Value" msgstr "Valor de parámetro por defecto" -#: part/models.py:3259 +#: part/models.py:3337 msgid "Part ID or part name" msgstr "" -#: part/models.py:3263 +#: part/models.py:3341 msgid "Unique part ID value" msgstr "" -#: part/models.py:3271 +#: part/models.py:3349 msgid "Part IPN value" msgstr "" -#: part/models.py:3274 +#: part/models.py:3352 msgid "Level" msgstr "" -#: part/models.py:3275 +#: part/models.py:3353 msgid "BOM level" msgstr "" -#: part/models.py:3344 +#: part/models.py:3422 msgid "Select parent part" msgstr "Seleccionar parte principal" -#: part/models.py:3352 +#: part/models.py:3430 msgid "Sub part" msgstr "Sub parte" -#: part/models.py:3353 +#: part/models.py:3431 msgid "Select part to be used in BOM" msgstr "Seleccionar parte a utilizar en BOM" -#: part/models.py:3359 +#: part/models.py:3437 msgid "BOM quantity for this BOM item" msgstr "Cantidad del artículo en BOM" -#: part/models.py:3363 part/templates/part/upload_bom.html:58 +#: part/models.py:3441 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:933 templates/js/translated/bom.js:986 #: templates/js/translated/build.js:1868 #: templates/js/translated/table_filters.js:84 @@ -5236,189 +5303,189 @@ msgstr "Cantidad del artículo en BOM" msgid "Optional" msgstr "Opcional" -#: part/models.py:3364 +#: part/models.py:3442 msgid "This BOM item is optional" msgstr "Este elemento BOM es opcional" -#: part/models.py:3369 templates/js/translated/bom.js:929 +#: part/models.py:3447 templates/js/translated/bom.js:929 #: templates/js/translated/bom.js:995 templates/js/translated/build.js:1859 #: templates/js/translated/table_filters.js:88 msgid "Consumable" msgstr "" -#: part/models.py:3370 +#: part/models.py:3448 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:3374 part/templates/part/upload_bom.html:55 +#: part/models.py:3452 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "Exceso" -#: part/models.py:3375 +#: part/models.py:3453 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Cantidad estimada de desperdicio de construcción (absoluta o porcentaje)" -#: part/models.py:3378 +#: part/models.py:3456 msgid "BOM item reference" msgstr "Referencia de artículo de BOM" -#: part/models.py:3381 +#: part/models.py:3459 msgid "BOM item notes" msgstr "Notas del artículo de BOM" -#: part/models.py:3383 +#: part/models.py:3461 msgid "Checksum" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "BOM line checksum" msgstr "Suma de comprobación de la línea en BOM" -#: part/models.py:3387 part/templates/part/upload_bom.html:57 +#: part/models.py:3465 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1012 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:108 msgid "Inherited" msgstr "Heredado" -#: part/models.py:3388 +#: part/models.py:3466 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Este artículo BOM es heredado por BOMs para partes variantes" -#: part/models.py:3393 part/templates/part/upload_bom.html:56 +#: part/models.py:3471 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1004 msgid "Allow Variants" msgstr "Permitir variantes" -#: part/models.py:3394 +#: part/models.py:3472 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Artículos de stock para partes variantes pueden ser usados para este artículo BOM" -#: part/models.py:3480 stock/models.py:558 +#: part/models.py:3558 stock/models.py:558 msgid "Quantity must be integer value for trackable parts" msgstr "La cantidad debe ser un valor entero para las partes rastreables" -#: part/models.py:3489 part/models.py:3491 +#: part/models.py:3567 part/models.py:3569 msgid "Sub part must be specified" msgstr "Debe especificar la subparte" -#: part/models.py:3618 +#: part/models.py:3696 msgid "BOM Item Substitute" msgstr "Ítem de BOM sustituto" -#: part/models.py:3639 +#: part/models.py:3717 msgid "Substitute part cannot be the same as the master part" msgstr "La parte sustituta no puede ser la misma que la parte principal" -#: part/models.py:3652 +#: part/models.py:3730 msgid "Parent BOM item" msgstr "Artículo BOM superior" -#: part/models.py:3660 +#: part/models.py:3738 msgid "Substitute part" msgstr "Sustituir parte" -#: part/models.py:3675 +#: part/models.py:3753 msgid "Part 1" msgstr "Parte 1" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Part 2" msgstr "Parte 2" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Select Related Part" msgstr "Seleccionar parte relacionada" -#: part/models.py:3697 +#: part/models.py:3775 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:3701 +#: part/models.py:3779 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:155 part/serializers.py:183 stock/serializers.py:183 +#: part/serializers.py:157 part/serializers.py:185 stock/serializers.py:183 msgid "Purchase currency of this stock item" msgstr "Moneda de compra de ítem de stock" -#: part/serializers.py:543 +#: part/serializers.py:584 msgid "Update" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:585 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:854 +#: part/serializers.py:895 msgid "Select part to copy BOM from" msgstr "Seleccionar parte de la que copiar BOM" -#: part/serializers.py:862 +#: part/serializers.py:903 msgid "Remove Existing Data" msgstr "Eliminar Datos Existentes" -#: part/serializers.py:863 +#: part/serializers.py:904 msgid "Remove existing BOM items before copying" msgstr "Eliminar elementos BOM existentes antes de copiar" -#: part/serializers.py:868 +#: part/serializers.py:909 msgid "Include Inherited" msgstr "Incluye Heredado" -#: part/serializers.py:869 +#: part/serializers.py:910 msgid "Include BOM items which are inherited from templated parts" msgstr "Incluye elementos BOM que son heredados de partes con plantillas" -#: part/serializers.py:874 +#: part/serializers.py:915 msgid "Skip Invalid Rows" msgstr "Omitir filas no válidas" -#: part/serializers.py:875 +#: part/serializers.py:916 msgid "Enable this option to skip invalid rows" msgstr "Activar esta opción para omitir filas inválidas" -#: part/serializers.py:880 +#: part/serializers.py:921 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:881 +#: part/serializers.py:922 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:962 msgid "Clear Existing BOM" msgstr "Limpiar BOM Existente" -#: part/serializers.py:922 +#: part/serializers.py:963 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:952 +#: part/serializers.py:993 msgid "No part column specified" msgstr "" -#: part/serializers.py:995 +#: part/serializers.py:1036 msgid "Multiple matching parts found" msgstr "Varios resultados encontrados" -#: part/serializers.py:998 +#: part/serializers.py:1039 msgid "No matching part found" msgstr "No se encontraron partes coincidentes" -#: part/serializers.py:1001 +#: part/serializers.py:1042 msgid "Part is not designated as a component" msgstr "La parte no está designada como componente" -#: part/serializers.py:1010 +#: part/serializers.py:1051 msgid "Quantity not provided" msgstr "Cantidad no proporcionada" -#: part/serializers.py:1018 +#: part/serializers.py:1059 msgid "Invalid quantity" msgstr "Cantidad no válida" -#: part/serializers.py:1039 +#: part/serializers.py:1080 msgid "At least one BOM item is required" msgstr "Se requiere al menos un elemento BOM" @@ -5450,7 +5517,7 @@ msgstr "El BOM para %(part)s fue revisado por última vez por %(checker msgid "The BOM for %(part)s has not been validated." msgstr "El BOM para %(part)s no ha sido validada." -#: part/templates/part/bom.html:30 part/templates/part/detail.html:267 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:290 msgid "BOM actions" msgstr "Acciones BOM" @@ -5507,8 +5574,8 @@ msgstr "Crear nueva parte" msgid "New Part" msgstr "Nueva Parte" -#: part/templates/part/category.html:169 part/templates/part/detail.html:366 -#: part/templates/part/detail.html:397 +#: part/templates/part/category.html:169 part/templates/part/detail.html:389 +#: part/templates/part/detail.html:420 msgid "Options" msgstr "Opciones" @@ -5556,7 +5623,7 @@ msgstr "" msgid "Import Parts" msgstr "Importar Partes" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:404 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:407 msgid "Duplicate Part" msgstr "Duplicar Parte" @@ -5593,119 +5660,129 @@ msgstr "" msgid "Refresh" msgstr "Actualizar" -#: part/templates/part/detail.html:59 +#: part/templates/part/detail.html:65 +msgid "Add stocktake information" +msgstr "" + +#: part/templates/part/detail.html:66 part/templates/part/part_sidebar.html:49 +#: stock/admin.py:107 templates/js/translated/stock.js:1905 +msgid "Stocktake" +msgstr "Inventario" + +#: part/templates/part/detail.html:82 msgid "Part Test Templates" msgstr "Plantillas de prueba de parte" -#: part/templates/part/detail.html:64 +#: part/templates/part/detail.html:87 msgid "Add Test Template" msgstr "Añadir Plantilla de Prueba" -#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:144 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "Asignaciones de órdenes de venta" -#: part/templates/part/detail.html:141 +#: part/templates/part/detail.html:164 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:156 +#: part/templates/part/detail.html:179 msgid "Part Variants" msgstr "Variantes de Parte" -#: part/templates/part/detail.html:160 +#: part/templates/part/detail.html:183 msgid "Create new variant" msgstr "Crear nueva variante" -#: part/templates/part/detail.html:161 +#: part/templates/part/detail.html:184 msgid "New Variant" msgstr "Nueva Variante" -#: part/templates/part/detail.html:188 +#: part/templates/part/detail.html:211 msgid "Add new parameter" msgstr "Añadir nuevo parámetro" -#: part/templates/part/detail.html:225 part/templates/part/part_sidebar.html:52 +#: part/templates/part/detail.html:248 part/templates/part/part_sidebar.html:57 msgid "Related Parts" msgstr "Partes relacionadas" -#: part/templates/part/detail.html:229 part/templates/part/detail.html:230 +#: part/templates/part/detail.html:252 part/templates/part/detail.html:253 msgid "Add Related" msgstr "Añadir Relacionado" -#: part/templates/part/detail.html:250 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:273 part/templates/part/part_sidebar.html:17 +#: report/templates/report/inventree_bill_of_materials_report.html:100 msgid "Bill of Materials" msgstr "Lista de Materiales" -#: part/templates/part/detail.html:255 +#: part/templates/part/detail.html:278 msgid "Export actions" msgstr "Exportar acciones" -#: part/templates/part/detail.html:259 templates/js/translated/bom.js:309 +#: part/templates/part/detail.html:282 templates/js/translated/bom.js:309 msgid "Export BOM" msgstr "Exportar BOM" -#: part/templates/part/detail.html:261 +#: part/templates/part/detail.html:284 msgid "Print BOM Report" msgstr "Imprimir informe BOM" -#: part/templates/part/detail.html:271 +#: part/templates/part/detail.html:294 msgid "Upload BOM" msgstr "Subir BOM" -#: part/templates/part/detail.html:272 templates/js/translated/part.js:276 +#: part/templates/part/detail.html:295 templates/js/translated/part.js:279 msgid "Copy BOM" msgstr "Copiar BOM" -#: part/templates/part/detail.html:273 +#: part/templates/part/detail.html:296 msgid "Validate BOM" msgstr "Validar BOM" -#: part/templates/part/detail.html:278 part/templates/part/detail.html:279 +#: part/templates/part/detail.html:301 part/templates/part/detail.html:302 #: templates/js/translated/bom.js:1268 templates/js/translated/bom.js:1269 msgid "Add BOM Item" msgstr "Añadir artículo al BOM" -#: part/templates/part/detail.html:292 +#: part/templates/part/detail.html:315 msgid "Assemblies" msgstr "Ensamblajes" -#: part/templates/part/detail.html:310 +#: part/templates/part/detail.html:333 msgid "Part Builds" msgstr "Construcción de partes" -#: part/templates/part/detail.html:337 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:360 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "Construir adjudicaciones de pedidos" -#: part/templates/part/detail.html:353 +#: part/templates/part/detail.html:376 msgid "Part Suppliers" msgstr "Proveedores de piezas" -#: part/templates/part/detail.html:383 +#: part/templates/part/detail.html:406 msgid "Part Manufacturers" msgstr "Fabricantes de piezas" -#: part/templates/part/detail.html:399 +#: part/templates/part/detail.html:422 msgid "Delete manufacturer parts" msgstr "Eliminar partes del fabricante" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:696 msgid "Related Part" msgstr "Partes relacionadas" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:704 msgid "Add Related Part" msgstr "Añadir artículos relacionados" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:796 msgid "Add Test Result Template" msgstr "Añadir plantilla de resultados de prueba" #: part/templates/part/import_wizard/ajax_part_upload.html:29 #: part/templates/part/import_wizard/part_upload.html:14 -msgid "Unsuffitient privileges." -msgstr "Privilegios insuficientes." +msgid "Insufficient privileges." +msgstr "" #: part/templates/part/import_wizard/part_upload.html:8 msgid "Return to Parts" @@ -5715,6 +5792,34 @@ msgstr "Volver a los artículos" msgid "Import Parts from File" msgstr "Importar artículos desde archivo" +#: part/templates/part/import_wizard/part_upload.html:31 +msgid "Requirements for part import" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "The part import file must contain the required named columns as provided in the " +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:89 +msgid "Download Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:92 +#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 +#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 +msgid "Format" +msgstr "Formato" + +#: part/templates/part/import_wizard/part_upload.html:93 +#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 +#: templates/js/translated/order.js:999 +msgid "Select file format" +msgstr "Seleccionar formato de archivo" + #: part/templates/part/part_app_base.html:12 msgid "Part List" msgstr "Listado de artículos" @@ -5804,12 +5909,12 @@ msgstr "La pieza es virtual (no una pieza física)" #: templates/js/translated/company.js:660 #: templates/js/translated/company.js:921 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:677 templates/js/translated/part.js:755 +#: templates/js/translated/part.js:680 templates/js/translated/part.js:1026 msgid "Inactive" msgstr "Inactivo" #: part/templates/part/part_base.html:165 -#: part/templates/part/part_base.html:666 +#: part/templates/part/part_base.html:680 msgid "Show Part Details" msgstr "Mostrar Detalles de Parte" @@ -5837,38 +5942,38 @@ msgid "Minimum stock level" msgstr "Nivel mínimo de stock" #: part/templates/part/part_base.html:330 templates/js/translated/bom.js:1032 -#: templates/js/translated/part.js:798 templates/js/translated/part.js:1604 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:1875 #: templates/js/translated/pricing.js:124 #: templates/js/translated/pricing.js:762 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:345 +#: part/templates/part/part_base.html:359 msgid "Latest Serial Number" msgstr "Último Número Serial" -#: part/templates/part/part_base.html:349 +#: part/templates/part/part_base.html:363 #: stock/templates/stock/item_base.html:331 msgid "Search for serial number" msgstr "Buscar número de serie" -#: part/templates/part/part_base.html:449 +#: part/templates/part/part_base.html:463 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:495 +#: part/templates/part/part_base.html:509 msgid "Calculate" msgstr "Calcular" -#: part/templates/part/part_base.html:512 +#: part/templates/part/part_base.html:526 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:564 +#: part/templates/part/part_base.html:578 msgid "No matching images found" msgstr "No se encontraron imágenes coincidentes" -#: part/templates/part/part_base.html:660 +#: part/templates/part/part_base.html:674 msgid "Hide Part Details" msgstr "Ocultar Detalles de la Parte" @@ -5920,15 +6025,6 @@ msgstr "Precio Interno" msgid "No pricing information is available for this part." msgstr "No hay información de precios disponible para esta parte." -#: part/templates/part/part_scheduling.html:13 -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:63 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:2043 templates/js/translated/pricing.js:537 -#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2516 -msgid "Date" -msgstr "Fecha" - #: part/templates/part/part_scheduling.html:14 msgid "Scheduled Quantity" msgstr "" @@ -5941,7 +6037,7 @@ msgstr "Variantes" msgid "Scheduling" msgstr "" -#: part/templates/part/part_sidebar.html:48 +#: part/templates/part/part_sidebar.html:53 msgid "Test Templates" msgstr "Plantillas de Prueba" @@ -5960,7 +6056,7 @@ msgstr "" #: part/templates/part/prices.html:25 stock/admin.py:106 #: stock/templates/stock/item_base.html:440 #: templates/js/translated/company.js:1039 -#: templates/js/translated/stock.js:1940 +#: templates/js/translated/stock.js:1935 msgid "Last Updated" msgstr "Última actualización" @@ -6023,8 +6119,8 @@ msgstr "" msgid "Add Sell Price Break" msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:639 -#: templates/js/translated/part.js:1373 templates/js/translated/part.js:1375 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:1644 templates/js/translated/part.js:1646 msgid "No Stock" msgstr "Sin Stock" @@ -6087,27 +6183,32 @@ msgstr "Base de datos desconocida" msgid "{title} v{version}" msgstr "" -#: part/views.py:109 +#: part/views.py:111 msgid "Match References" msgstr "Coincidir Referencias" -#: part/views.py:354 +#: part/views.py:239 +#, python-brace-format +msgid "Can't import part {name} because there is no category assigned" +msgstr "" + +#: part/views.py:378 msgid "Part QR Code" msgstr "Código QR de Parte" -#: part/views.py:372 +#: part/views.py:396 msgid "Select Part Image" msgstr "Seleccionar Imagen de Parte" -#: part/views.py:398 +#: part/views.py:422 msgid "Updated part image" msgstr "Imagen de parte actualizada" -#: part/views.py:401 +#: part/views.py:425 msgid "Part image not found" msgstr "Imagen de parte no encontrada" -#: part/views.py:493 +#: part/views.py:517 msgid "Part Pricing" msgstr "Precio de parte" @@ -6156,28 +6257,48 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:29 -#: plugin/builtin/integration/core_notifications.py:31 +#: plugin/builtin/integration/core_notifications.py:33 msgid "InvenTree contributors" msgstr "" -#: plugin/builtin/integration/core_notifications.py:30 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:32 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notificaton methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:37 -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:80 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:38 -#: plugin/builtin/integration/core_notifications.py:57 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:81 msgid "Allow sending of emails for event notifications" msgstr "" +#: plugin/builtin/integration/core_notifications.py:45 +msgid "Enable slack notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:46 +msgid "Allow sending of slack channel messages for event notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:51 +msgid "Slack incoming webhook url" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:52 +msgid "URL that is used to send messages to a slack channel" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:162 +msgid "Open link" +msgstr "" + #: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" @@ -6409,6 +6530,10 @@ msgstr "Reportar archivo de activos" msgid "Asset file description" msgstr "Descripción del archivo de activos" +#: report/templates/report/inventree_bill_of_materials_report.html:133 +msgid "Materials needed" +msgstr "" + #: report/templates/report/inventree_build_order_base.html:146 msgid "Required For" msgstr "Requerido para" @@ -6427,7 +6552,7 @@ msgstr "Artículo Stock Informe de prueba" #: templates/js/translated/build.js:1244 templates/js/translated/build.js:1745 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:121 templates/js/translated/order.js:3611 -#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:522 +#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:521 msgid "Serial Number" msgstr "Número de serie" @@ -6459,8 +6584,9 @@ msgid "Installed Items" msgstr "Elementos instalados" #: report/templates/report/inventree_test_report_base.html:137 -#: stock/admin.py:87 templates/js/translated/stock.js:642 -#: templates/js/translated/stock.js:812 templates/js/translated/stock.js:2765 +#: stock/admin.py:87 templates/js/translated/part.js:749 +#: templates/js/translated/stock.js:641 templates/js/translated/stock.js:811 +#: templates/js/translated/stock.js:2760 msgid "Serial" msgstr "" @@ -6515,13 +6641,9 @@ msgstr "" msgid "Purchase Order ID" msgstr "" -#: stock/admin.py:107 templates/js/translated/stock.js:1910 -msgid "Stocktake" -msgstr "Inventario" - #: stock/admin.py:108 stock/models.py:764 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/stock.js:1924 +#: templates/js/translated/stock.js:1919 msgid "Expiry Date" msgstr "Fecha de Expiración" @@ -6936,7 +7058,7 @@ msgstr "Añadir Datos de Prueba" msgid "Installed Stock Items" msgstr "Elementos de Stock instalados" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2912 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2907 msgid "Install Stock Item" msgstr "Instalar elemento de stock" @@ -6944,7 +7066,7 @@ msgstr "Instalar elemento de stock" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1561 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1560 msgid "Add Test Result" msgstr "Añadir Resultado de Prueba" @@ -7117,10 +7239,6 @@ msgstr "Este ítem expira el %(item.expiry_date)s" msgid "Stale" msgstr "Desactualizado" -#: stock/templates/stock/item_base.html:445 -msgid "Last Stocktake" -msgstr "Último inventario" - #: stock/templates/stock/item_base.html:449 msgid "No stocktake performed" msgstr "Ningún inventario realizado" @@ -7394,7 +7512,8 @@ msgstr "" #: templates/InvenTree/notifications/notifications.html:10 #: templates/InvenTree/notifications/sidebar.html:5 -#: templates/InvenTree/settings/sidebar.html:17 templates/notifications.html:5 +#: templates/InvenTree/settings/sidebar.html:17 +#: templates/InvenTree/settings/sidebar.html:35 templates/notifications.html:5 msgid "Notifications" msgstr "" @@ -7475,6 +7594,14 @@ msgstr "La URL base para este plugin es msgid "Open in new tab" msgstr "Abrir en una pestaña nueva" +#: templates/InvenTree/settings/notifications.html:9 +msgid "Global Notification Settings" +msgstr "" + +#: templates/InvenTree/settings/notifications.html:18 +msgid "Slug" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "Ajustes de Parte" @@ -7492,7 +7619,7 @@ msgid "Part Parameter Templates" msgstr "Plantillas de Parámetros de Partes" #: templates/InvenTree/settings/plugin.html:10 -#: templates/InvenTree/settings/sidebar.html:55 +#: templates/InvenTree/settings/sidebar.html:57 msgid "Plugin Settings" msgstr "Ajustes del Plugin" @@ -7501,7 +7628,7 @@ msgid "Changing the settings below require you to immediately restart the server msgstr "" #: templates/InvenTree/settings/plugin.html:38 -#: templates/InvenTree/settings/sidebar.html:57 +#: templates/InvenTree/settings/sidebar.html:59 msgid "Plugins" msgstr "" @@ -7669,67 +7796,67 @@ msgstr "Ningún valor establecido" msgid "Edit setting" msgstr "Editar ajustes" -#: templates/InvenTree/settings/settings.html:117 +#: templates/InvenTree/settings/settings.html:118 msgid "Edit Plugin Setting" msgstr "Editar Configuración del Plugin" -#: templates/InvenTree/settings/settings.html:119 +#: templates/InvenTree/settings/settings.html:120 msgid "Edit Notification Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:122 +#: templates/InvenTree/settings/settings.html:123 msgid "Edit Global Setting" msgstr "Editar Configuración Global" -#: templates/InvenTree/settings/settings.html:124 +#: templates/InvenTree/settings/settings.html:125 msgid "Edit User Setting" msgstr "Editar Configuración de Usuario" -#: templates/InvenTree/settings/settings.html:214 +#: templates/InvenTree/settings/settings.html:215 msgid "No category parameter templates found" msgstr "No hay plantillas de parámetros de categoría" -#: templates/InvenTree/settings/settings.html:236 -#: templates/InvenTree/settings/settings.html:361 +#: templates/InvenTree/settings/settings.html:237 +#: templates/InvenTree/settings/settings.html:362 msgid "Edit Template" msgstr "Editar Plantilla" -#: templates/InvenTree/settings/settings.html:237 -#: templates/InvenTree/settings/settings.html:362 +#: templates/InvenTree/settings/settings.html:238 +#: templates/InvenTree/settings/settings.html:363 msgid "Delete Template" msgstr "Eliminar Plantilla" -#: templates/InvenTree/settings/settings.html:277 +#: templates/InvenTree/settings/settings.html:278 msgid "Create Category Parameter Template" msgstr "Crear plantilla de parámetro de categoría" -#: templates/InvenTree/settings/settings.html:322 +#: templates/InvenTree/settings/settings.html:323 msgid "Delete Category Parameter Template" msgstr "Eliminar plantilla de parámetro de categoría" -#: templates/InvenTree/settings/settings.html:334 +#: templates/InvenTree/settings/settings.html:335 msgid "No part parameter templates found" msgstr "No se encontraron plantillas de parámetros de parte" -#: templates/InvenTree/settings/settings.html:338 +#: templates/InvenTree/settings/settings.html:339 #: templates/js/translated/news.js:29 #: templates/js/translated/notification.js:36 msgid "ID" msgstr "Identificación" -#: templates/InvenTree/settings/settings.html:380 +#: templates/InvenTree/settings/settings.html:381 msgid "Create Part Parameter Template" msgstr "Crear plantilla Parámetro de Parte" -#: templates/InvenTree/settings/settings.html:399 +#: templates/InvenTree/settings/settings.html:400 msgid "Edit Part Parameter Template" msgstr "Crear plantilla Parámetro de Parte" -#: templates/InvenTree/settings/settings.html:413 +#: templates/InvenTree/settings/settings.html:414 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/InvenTree/settings/settings.html:421 +#: templates/InvenTree/settings/settings.html:422 msgid "Delete Part Parameter Template" msgstr "Eliminar Plantilla de Parámetros de Parte" @@ -7758,12 +7885,12 @@ msgid "Search Settings" msgstr "Ajustes de Búsqueda" #: templates/InvenTree/settings/sidebar.html:19 -#: templates/InvenTree/settings/sidebar.html:37 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Label Printing" msgstr "Impresión de etiquetas" #: templates/InvenTree/settings/sidebar.html:21 -#: templates/InvenTree/settings/sidebar.html:39 +#: templates/InvenTree/settings/sidebar.html:41 msgid "Reporting" msgstr "Informando" @@ -7775,7 +7902,7 @@ msgstr "Configuración Global" msgid "Server Configuration" msgstr "Configuración del Servidor" -#: templates/InvenTree/settings/sidebar.html:43 +#: templates/InvenTree/settings/sidebar.html:45 msgid "Categories" msgstr "Categorías" @@ -7945,64 +8072,64 @@ msgstr "%(time)s atrás" msgid "Do you really want to remove the selected email address?" msgstr "¿Realmente desea eliminar la dirección de correo electrónico seleccionada?" -#: templates/InvenTree/settings/user_display.html:28 +#: templates/InvenTree/settings/user_display.html:29 msgid "Theme Settings" msgstr "Configuración del Tema" -#: templates/InvenTree/settings/user_display.html:38 +#: templates/InvenTree/settings/user_display.html:39 msgid "Select theme" msgstr "Seleccionar tema" -#: templates/InvenTree/settings/user_display.html:49 +#: templates/InvenTree/settings/user_display.html:50 msgid "Set Theme" msgstr "Establecer tema" -#: templates/InvenTree/settings/user_display.html:57 +#: templates/InvenTree/settings/user_display.html:58 msgid "Language Settings" msgstr "Configuración de Idioma" -#: templates/InvenTree/settings/user_display.html:66 +#: templates/InvenTree/settings/user_display.html:67 msgid "Select language" msgstr "Seleccionar idioma" -#: templates/InvenTree/settings/user_display.html:82 +#: templates/InvenTree/settings/user_display.html:83 #, python-format msgid "%(lang_translated)s%% translated" msgstr "%(lang_translated)s%% traducido" -#: templates/InvenTree/settings/user_display.html:84 +#: templates/InvenTree/settings/user_display.html:85 msgid "No translations available" msgstr "No hay traducciones disponibles" -#: templates/InvenTree/settings/user_display.html:91 +#: templates/InvenTree/settings/user_display.html:92 msgid "Set Language" msgstr "Definir Idioma" -#: templates/InvenTree/settings/user_display.html:94 +#: templates/InvenTree/settings/user_display.html:95 msgid "Some languages are not complete" msgstr "Algunos idiomas no están completos" -#: templates/InvenTree/settings/user_display.html:96 +#: templates/InvenTree/settings/user_display.html:97 msgid "Show only sufficent" msgstr "Mostrar solo el contenido" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "and hidden." msgstr "y oculto." -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "Show them too" msgstr "Mostrar también" -#: templates/InvenTree/settings/user_display.html:105 +#: templates/InvenTree/settings/user_display.html:106 msgid "Help the translation efforts!" msgstr "¡Ayuda a los esfuerzos de traducción!" -#: templates/InvenTree/settings/user_display.html:106 +#: templates/InvenTree/settings/user_display.html:107 msgid "Native language translation of the web application is community contributed via crowdin. Contributions are welcomed and encouraged." msgstr "" -#: templates/InvenTree/settings/user_display.html:107 +#: templates/InvenTree/settings/user_display.html:108 msgid "InvenTree Translation Project" msgstr "" @@ -8080,7 +8207,7 @@ msgstr "Confirmar Email" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "Confirme que %(email)s es una dirección de correo electrónico para el usuario %(user_display)s." -#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:646 +#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:649 msgid "Confirm" msgstr "Confirmar" @@ -8316,7 +8443,7 @@ msgid "Click on the following link to view this part" msgstr "Haga clic en el siguiente enlace para ver esta pieza" #: templates/email/low_stock_notification.html:19 -#: templates/js/translated/part.js:2445 +#: templates/js/translated/part.js:2726 msgid "Minimum Quantity" msgstr "Cantidad Mínima" @@ -8469,7 +8596,7 @@ msgstr "" msgid "Unlink" msgstr "Desvincular" -#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1089 +#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1088 msgid "Remove stock item" msgstr "Eliminar elemento de stock" @@ -8551,16 +8678,6 @@ msgstr "Cerrar" msgid "Download BOM Template" msgstr "Descargar plantilla BOM" -#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 -#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 -msgid "Format" -msgstr "Formato" - -#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 -#: templates/js/translated/order.js:999 -msgid "Select file format" -msgstr "Seleccionar formato de archivo" - #: templates/js/translated/bom.js:320 msgid "Multi Level BOM" msgstr "" @@ -8691,7 +8808,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:1145 templates/js/translated/build.js:1923 -#: templates/js/translated/part.js:790 templates/js/translated/part.js:1572 +#: templates/js/translated/part.js:1061 templates/js/translated/part.js:1843 msgid "Includes variant stock" msgstr "" @@ -8776,13 +8893,13 @@ msgstr "Orden de construcción incompleta" msgid "Complete Build Order" msgstr "Completar Orden de Construcción" -#: templates/js/translated/build.js:317 templates/js/translated/stock.js:95 -#: templates/js/translated/stock.js:237 +#: templates/js/translated/build.js:317 templates/js/translated/stock.js:94 +#: templates/js/translated/stock.js:236 msgid "Next available serial number" msgstr "Siguiente número de serie disponible" -#: templates/js/translated/build.js:319 templates/js/translated/stock.js:97 -#: templates/js/translated/stock.js:239 +#: templates/js/translated/build.js:319 templates/js/translated/stock.js:96 +#: templates/js/translated/stock.js:238 msgid "Latest serial number" msgstr "Último número de serie" @@ -8990,9 +9107,9 @@ msgstr "" msgid "No builds matching query" msgstr "No hay trabajos que coincidan con la consulta" -#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1466 -#: templates/js/translated/part.js:2003 templates/js/translated/stock.js:1725 -#: templates/js/translated/stock.js:2428 +#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1737 +#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1724 +#: templates/js/translated/stock.js:2423 msgid "Select" msgstr "Seleccionar" @@ -9004,7 +9121,7 @@ msgstr "Orden de trabajo atrasada" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2695 +#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2690 msgid "No user information" msgstr "No hay información de usuario" @@ -9077,34 +9194,34 @@ msgid "No manufacturer parts found" msgstr "No se encontraron partes del fabricante" #: templates/js/translated/company.js:652 -#: templates/js/translated/company.js:913 templates/js/translated/part.js:661 -#: templates/js/translated/part.js:747 +#: templates/js/translated/company.js:913 templates/js/translated/part.js:664 +#: templates/js/translated/part.js:1018 msgid "Template part" msgstr "Plantilla de parte" #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:917 templates/js/translated/part.js:665 -#: templates/js/translated/part.js:751 +#: templates/js/translated/company.js:917 templates/js/translated/part.js:668 +#: templates/js/translated/part.js:1022 msgid "Assembled part" msgstr "Parte ensamblada" -#: templates/js/translated/company.js:784 templates/js/translated/part.js:870 +#: templates/js/translated/company.js:784 templates/js/translated/part.js:1141 msgid "No parameters found" msgstr "No se encontraron parámetros" -#: templates/js/translated/company.js:821 templates/js/translated/part.js:912 +#: templates/js/translated/company.js:821 templates/js/translated/part.js:1183 msgid "Edit parameter" msgstr "Editar parámetro" -#: templates/js/translated/company.js:822 templates/js/translated/part.js:913 +#: templates/js/translated/company.js:822 templates/js/translated/part.js:1184 msgid "Delete parameter" msgstr "Eliminar parámetro" -#: templates/js/translated/company.js:841 templates/js/translated/part.js:930 +#: templates/js/translated/company.js:841 templates/js/translated/part.js:1201 msgid "Edit Parameter" msgstr "Editar parámetro" -#: templates/js/translated/company.js:852 templates/js/translated/part.js:942 +#: templates/js/translated/company.js:852 templates/js/translated/part.js:1213 msgid "Delete Parameter" msgstr "Eliminar parámetro" @@ -9184,61 +9301,61 @@ msgstr "Limpiar todos los filtros" msgid "Create filter" msgstr "Crear filtro" -#: templates/js/translated/forms.js:369 templates/js/translated/forms.js:384 -#: templates/js/translated/forms.js:398 templates/js/translated/forms.js:412 +#: templates/js/translated/forms.js:372 templates/js/translated/forms.js:387 +#: templates/js/translated/forms.js:401 templates/js/translated/forms.js:415 msgid "Action Prohibited" msgstr "Acción Prohibida" -#: templates/js/translated/forms.js:371 +#: templates/js/translated/forms.js:374 msgid "Create operation not allowed" msgstr "Operación de creación no permitida" -#: templates/js/translated/forms.js:386 +#: templates/js/translated/forms.js:389 msgid "Update operation not allowed" msgstr "Operación de actualización no permitida" -#: templates/js/translated/forms.js:400 +#: templates/js/translated/forms.js:403 msgid "Delete operation not allowed" msgstr "Operación de eliminación no permitida" -#: templates/js/translated/forms.js:414 +#: templates/js/translated/forms.js:417 msgid "View operation not allowed" msgstr "Operación de visualización no permitida" -#: templates/js/translated/forms.js:672 +#: templates/js/translated/forms.js:675 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:773 +#: templates/js/translated/forms.js:776 msgid "Enter a valid number" msgstr "Introduzca un número válido" -#: templates/js/translated/forms.js:1266 templates/modals.html:19 +#: templates/js/translated/forms.js:1269 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "Existen errores en el formulario" -#: templates/js/translated/forms.js:1703 +#: templates/js/translated/forms.js:1706 msgid "No results found" msgstr "No hay resultados" -#: templates/js/translated/forms.js:1919 templates/search.html:29 +#: templates/js/translated/forms.js:1922 templates/search.html:29 msgid "Searching" msgstr "Buscando" -#: templates/js/translated/forms.js:2172 +#: templates/js/translated/forms.js:2175 msgid "Clear input" msgstr "Limpiar entrada" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:2640 +#: templates/js/translated/forms.js:2643 msgid "Select Columns" msgstr "" @@ -9259,7 +9376,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1113 +#: templates/js/translated/stock.js:1112 msgid "Select Stock Items" msgstr "Seleccionar elementos de stock" @@ -9593,7 +9710,7 @@ msgstr "" msgid "Quantity to receive" msgstr "Cantidad a recibir" -#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2184 +#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2179 msgid "Stock Status" msgstr "Estado del Stock" @@ -9617,7 +9734,7 @@ msgstr "Confirmar recepción de artículos" msgid "Receive Purchase Order Items" msgstr "Recibir artículos de orden de compra" -#: templates/js/translated/order.js:1982 templates/js/translated/part.js:983 +#: templates/js/translated/order.js:1982 templates/js/translated/part.js:1254 msgid "No purchase orders found" msgstr "No se encontraron órdenes de compra" @@ -9650,8 +9767,8 @@ msgstr "No hay elementos de línea" msgid "Total" msgstr "" -#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1085 -#: templates/js/translated/part.js:1137 +#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1356 +#: templates/js/translated/part.js:1408 msgid "Total Quantity" msgstr "" @@ -9669,11 +9786,11 @@ msgid "Total Price" msgstr "Precio Total" #: templates/js/translated/order.js:2388 templates/js/translated/order.js:3900 -#: templates/js/translated/part.js:1121 +#: templates/js/translated/part.js:1392 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1166 +#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1437 msgid "Receive line item" msgstr "Recibir ítem de línea" @@ -9794,7 +9911,7 @@ msgid "Delete Stock Allocation" msgstr "Eliminar Adjudicación de Stock" #: templates/js/translated/order.js:3623 templates/js/translated/order.js:3712 -#: templates/js/translated/stock.js:1641 +#: templates/js/translated/stock.js:1640 msgid "Shipped to customer" msgstr "Enviado al cliente" @@ -9838,334 +9955,358 @@ msgstr "No hay elementos de línea coincidentes" msgid "No matching lines" msgstr "" -#: templates/js/translated/part.js:52 +#: templates/js/translated/part.js:55 msgid "Part Attributes" msgstr "Atributos de Parte" -#: templates/js/translated/part.js:56 +#: templates/js/translated/part.js:59 msgid "Part Creation Options" msgstr "Opciones de Creación de Parte" -#: templates/js/translated/part.js:60 +#: templates/js/translated/part.js:63 msgid "Part Duplication Options" msgstr "Opciones de Duplicación de Parte" -#: templates/js/translated/part.js:64 +#: templates/js/translated/part.js:67 msgid "Supplier Options" msgstr "Opciones de Proveedor" -#: templates/js/translated/part.js:78 +#: templates/js/translated/part.js:81 msgid "Add Part Category" msgstr "Añadir Categoría de Parte" -#: templates/js/translated/part.js:168 +#: templates/js/translated/part.js:171 msgid "Create Initial Stock" msgstr "Crear Stock Inicial" -#: templates/js/translated/part.js:169 +#: templates/js/translated/part.js:172 msgid "Create an initial stock item for this part" msgstr "Crear un elemento inicial de stock para esta parte" -#: templates/js/translated/part.js:176 +#: templates/js/translated/part.js:179 msgid "Initial Stock Quantity" msgstr "Cantidad Inicial de Stock" -#: templates/js/translated/part.js:177 +#: templates/js/translated/part.js:180 msgid "Specify initial stock quantity for this part" msgstr "Especifique la cantidad inicial de stock para esta parte" -#: templates/js/translated/part.js:184 +#: templates/js/translated/part.js:187 msgid "Select destination stock location" msgstr "Seleccionar ubicación de stock de destino" -#: templates/js/translated/part.js:202 +#: templates/js/translated/part.js:205 msgid "Copy Category Parameters" msgstr "Copiar Parámetros de Categoría" -#: templates/js/translated/part.js:203 +#: templates/js/translated/part.js:206 msgid "Copy parameter templates from selected part category" msgstr "Copiar plantillas de parámetro de la categoría de partes seleccionada" -#: templates/js/translated/part.js:211 +#: templates/js/translated/part.js:214 msgid "Add Supplier Data" msgstr "Añadir Datos de Proveedor" -#: templates/js/translated/part.js:212 +#: templates/js/translated/part.js:215 msgid "Create initial supplier data for this part" msgstr "Crear datos iniciales del proveedor para esta parte" -#: templates/js/translated/part.js:268 +#: templates/js/translated/part.js:271 msgid "Copy Image" msgstr "Copiar Imagen" -#: templates/js/translated/part.js:269 +#: templates/js/translated/part.js:272 msgid "Copy image from original part" msgstr "Copiar imagen desde la parte original" -#: templates/js/translated/part.js:277 +#: templates/js/translated/part.js:280 msgid "Copy bill of materials from original part" msgstr "Copiar la factura de materiales de la parte original" -#: templates/js/translated/part.js:284 +#: templates/js/translated/part.js:287 msgid "Copy Parameters" msgstr "Copiar Parámetros" -#: templates/js/translated/part.js:285 +#: templates/js/translated/part.js:288 msgid "Copy parameter data from original part" msgstr "Copiar datos del parámetro de la parte original" -#: templates/js/translated/part.js:298 +#: templates/js/translated/part.js:301 msgid "Parent part category" msgstr "Categoría superior de parte" -#: templates/js/translated/part.js:313 templates/js/translated/stock.js:122 +#: templates/js/translated/part.js:316 templates/js/translated/stock.js:121 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:329 +#: templates/js/translated/part.js:332 msgid "Edit Part Category" msgstr "Editar Categoría de Parte" -#: templates/js/translated/part.js:342 +#: templates/js/translated/part.js:345 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:347 +#: templates/js/translated/part.js:350 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:359 msgid "Delete Part Category" msgstr "Eliminar Categoría de Parte" -#: templates/js/translated/part.js:360 +#: templates/js/translated/part.js:363 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:368 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:394 +#: templates/js/translated/part.js:397 msgid "Edit Part" msgstr "Editar Parte" -#: templates/js/translated/part.js:396 +#: templates/js/translated/part.js:399 msgid "Part edited" msgstr "Parte editada" -#: templates/js/translated/part.js:407 +#: templates/js/translated/part.js:410 msgid "Create Part Variant" msgstr "Crear Variante de Parte" -#: templates/js/translated/part.js:459 +#: templates/js/translated/part.js:462 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:460 +#: templates/js/translated/part.js:463 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:477 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:476 +#: templates/js/translated/part.js:479 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:477 +#: templates/js/translated/part.js:480 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:478 +#: templates/js/translated/part.js:481 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:485 +#: templates/js/translated/part.js:488 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:521 +#: templates/js/translated/part.js:524 msgid "You are subscribed to notifications for this item" msgstr "Estás suscrito a las notificaciones de este elemento" -#: templates/js/translated/part.js:523 +#: templates/js/translated/part.js:526 msgid "You have subscribed to notifications for this item" msgstr "Te has suscrito a las notificaciones de este elemento" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:531 msgid "Subscribe to notifications for this item" msgstr "Suscríbete a las notificaciones de este elemento" -#: templates/js/translated/part.js:530 +#: templates/js/translated/part.js:533 msgid "You have unsubscribed to notifications for this item" msgstr "Has cancelado la suscripción a las notificaciones de este elemento" -#: templates/js/translated/part.js:547 +#: templates/js/translated/part.js:550 msgid "Validating the BOM will mark each line item as valid" msgstr "Validar el BOM marcará cada elemento de línea como válido" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:560 msgid "Validate Bill of Materials" msgstr "Validar la Factura de Materiales" -#: templates/js/translated/part.js:560 +#: templates/js/translated/part.js:563 msgid "Validated Bill of Materials" msgstr "Validación de Lista de Materiales" -#: templates/js/translated/part.js:585 +#: templates/js/translated/part.js:588 msgid "Copy Bill of Materials" msgstr "Copiar Factura de Materiales" -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1554 +#: templates/js/translated/part.js:612 templates/js/translated/part.js:1825 #: templates/js/translated/table_filters.js:488 msgid "Low stock" msgstr "Stock bajo" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:622 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:653 templates/js/translated/part.js:739 +#: templates/js/translated/part.js:656 templates/js/translated/part.js:1010 msgid "Trackable part" msgstr "Parte Rastreable" -#: templates/js/translated/part.js:657 templates/js/translated/part.js:743 +#: templates/js/translated/part.js:660 templates/js/translated/part.js:1014 msgid "Virtual part" msgstr "Parte virtual" -#: templates/js/translated/part.js:669 +#: templates/js/translated/part.js:672 msgid "Subscribed part" msgstr "Parte suscrita" -#: templates/js/translated/part.js:673 +#: templates/js/translated/part.js:676 msgid "Salable part" msgstr "Pieza vendible" -#: templates/js/translated/part.js:815 +#: templates/js/translated/part.js:761 +msgid "Stock item has not been checked recently" +msgstr "" + +#: templates/js/translated/part.js:769 +msgid "Update item" +msgstr "" + +#: templates/js/translated/part.js:770 +msgid "Delete item" +msgstr "" + +#: templates/js/translated/part.js:871 +msgid "No stocktake information available" +msgstr "" + +#: templates/js/translated/part.js:910 templates/js/translated/part.js:933 +msgid "Edit Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:914 templates/js/translated/part.js:945 +msgid "Delete Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:1086 msgid "No variants found" msgstr "No se encontraron variantes" -#: templates/js/translated/part.js:1236 +#: templates/js/translated/part.js:1507 msgid "Delete part relationship" msgstr "Eliminar relación de parte" -#: templates/js/translated/part.js:1260 +#: templates/js/translated/part.js:1531 msgid "Delete Part Relationship" msgstr "Eliminar Relación de Parte" -#: templates/js/translated/part.js:1327 templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1598 templates/js/translated/part.js:1936 msgid "No parts found" msgstr "No se encontraron partes" -#: templates/js/translated/part.js:1521 +#: templates/js/translated/part.js:1792 msgid "No category" msgstr "Sin categoría" -#: templates/js/translated/part.js:1552 +#: templates/js/translated/part.js:1823 msgid "No stock" msgstr "" -#: templates/js/translated/part.js:1576 +#: templates/js/translated/part.js:1847 msgid "Allocated to build orders" msgstr "" -#: templates/js/translated/part.js:1580 +#: templates/js/translated/part.js:1851 msgid "Allocated to sales orders" msgstr "" -#: templates/js/translated/part.js:1679 templates/js/translated/part.js:1922 -#: templates/js/translated/stock.js:2387 +#: templates/js/translated/part.js:1960 templates/js/translated/part.js:2203 +#: templates/js/translated/stock.js:2382 msgid "Display as list" msgstr "Mostrar como lista" -#: templates/js/translated/part.js:1695 +#: templates/js/translated/part.js:1976 msgid "Display as grid" msgstr "Mostrar como cuadrícula" -#: templates/js/translated/part.js:1761 +#: templates/js/translated/part.js:2042 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1766 +#: templates/js/translated/part.js:2047 msgid "Set Part Category" msgstr "Definir Categoría de Parte" -#: templates/js/translated/part.js:1771 +#: templates/js/translated/part.js:2052 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1784 +#: templates/js/translated/part.js:2065 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1942 templates/js/translated/stock.js:2407 +#: templates/js/translated/part.js:2223 templates/js/translated/stock.js:2402 msgid "Display as tree" msgstr "Mostrar como árbol" -#: templates/js/translated/part.js:2022 +#: templates/js/translated/part.js:2303 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2038 +#: templates/js/translated/part.js:2319 msgid "Subscribed category" msgstr "Categoría suscrita" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2383 msgid "No test templates matching query" msgstr "No hay plantillas de prueba que coincidan con la consulta" -#: templates/js/translated/part.js:2153 templates/js/translated/stock.js:1338 +#: templates/js/translated/part.js:2434 templates/js/translated/stock.js:1337 msgid "Edit test result" msgstr "Editar resultado de prueba" -#: templates/js/translated/part.js:2154 templates/js/translated/stock.js:1339 -#: templates/js/translated/stock.js:1599 +#: templates/js/translated/part.js:2435 templates/js/translated/stock.js:1338 +#: templates/js/translated/stock.js:1598 msgid "Delete test result" msgstr "Eliminar resultado de prueba" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2441 msgid "This test is defined for a parent part" msgstr "Esta prueba está definida para una parte principal" -#: templates/js/translated/part.js:2182 +#: templates/js/translated/part.js:2463 msgid "Edit Test Result Template" msgstr "Editar plantilla de resultado de prueba" -#: templates/js/translated/part.js:2196 +#: templates/js/translated/part.js:2477 msgid "Delete Test Result Template" msgstr "Eliminar plantilla de resultados de prueba" -#: templates/js/translated/part.js:2277 templates/js/translated/part.js:2278 +#: templates/js/translated/part.js:2558 templates/js/translated/part.js:2559 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2280 +#: templates/js/translated/part.js:2561 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:2286 +#: templates/js/translated/part.js:2567 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:2336 +#: templates/js/translated/part.js:2617 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2623 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:2438 +#: templates/js/translated/part.js:2719 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2454 +#: templates/js/translated/part.js:2735 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:2499 +#: templates/js/translated/part.js:2780 msgid "Minimum Stock Level" msgstr "" @@ -10293,388 +10434,388 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:74 +#: templates/js/translated/stock.js:73 msgid "Serialize Stock Item" msgstr "Serializar Artículo de Stock" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:104 msgid "Confirm Stock Serialization" msgstr "Confirmar Serialización de Stock" -#: templates/js/translated/stock.js:114 +#: templates/js/translated/stock.js:113 msgid "Parent stock location" msgstr "Ubicación del stock principal" -#: templates/js/translated/stock.js:148 +#: templates/js/translated/stock.js:147 msgid "Edit Stock Location" msgstr "Editar ubicación de stock" -#: templates/js/translated/stock.js:163 +#: templates/js/translated/stock.js:162 msgid "New Stock Location" msgstr "Nueva Ubicación de Stock" -#: templates/js/translated/stock.js:177 +#: templates/js/translated/stock.js:176 msgid "Are you sure you want to delete this stock location?" msgstr "¿Está seguro que desea eliminar esta ubicación?" -#: templates/js/translated/stock.js:184 +#: templates/js/translated/stock.js:183 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:193 +#: templates/js/translated/stock.js:192 msgid "Delete Stock Location" msgstr "Eliminar ubicación de stock" -#: templates/js/translated/stock.js:197 +#: templates/js/translated/stock.js:196 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:201 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:256 +#: templates/js/translated/stock.js:255 msgid "This part cannot be serialized" msgstr "Esta parte no se puede serializar" -#: templates/js/translated/stock.js:298 +#: templates/js/translated/stock.js:297 msgid "Enter initial quantity for this stock item" msgstr "Introduzca la cantidad inicial para este artículo de stock" -#: templates/js/translated/stock.js:304 +#: templates/js/translated/stock.js:303 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "Introduzca números de serie para el nuevo stock (o deje en blanco)" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:368 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:389 +#: templates/js/translated/stock.js:388 msgid "Duplicate Stock Item" msgstr "Duplicar artículo de stock" -#: templates/js/translated/stock.js:405 +#: templates/js/translated/stock.js:404 msgid "Are you sure you want to delete this stock item?" msgstr "¿Está seguro que desea eliminar este elemento de stock?" -#: templates/js/translated/stock.js:410 +#: templates/js/translated/stock.js:409 msgid "Delete Stock Item" msgstr "Eliminar elemento de stock" -#: templates/js/translated/stock.js:431 +#: templates/js/translated/stock.js:430 msgid "Edit Stock Item" msgstr "Editar artículo de stock" -#: templates/js/translated/stock.js:481 +#: templates/js/translated/stock.js:480 msgid "Created new stock item" msgstr "Crear nuevo artículo de stock" -#: templates/js/translated/stock.js:494 +#: templates/js/translated/stock.js:493 msgid "Created multiple stock items" msgstr "Creados varios artículos de stock" -#: templates/js/translated/stock.js:519 +#: templates/js/translated/stock.js:518 msgid "Find Serial Number" msgstr "Encontrar número serial" -#: templates/js/translated/stock.js:523 templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:522 templates/js/translated/stock.js:523 msgid "Enter serial number" msgstr "Introducir número de serie" -#: templates/js/translated/stock.js:540 +#: templates/js/translated/stock.js:539 msgid "Enter a serial number" msgstr "Introducir un número de serie" -#: templates/js/translated/stock.js:560 +#: templates/js/translated/stock.js:559 msgid "No matching serial number" msgstr "Ningún número de serie coincidente" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:568 msgid "More than one matching result found" msgstr "Más de un resultado encontrado" -#: templates/js/translated/stock.js:692 +#: templates/js/translated/stock.js:691 msgid "Confirm stock assignment" msgstr "Confirmar asignación de stock" -#: templates/js/translated/stock.js:693 +#: templates/js/translated/stock.js:692 msgid "Assign Stock to Customer" msgstr "Asignar Stock al Cliente" -#: templates/js/translated/stock.js:770 +#: templates/js/translated/stock.js:769 msgid "Warning: Merge operation cannot be reversed" msgstr "Advertencia: La operación de fusión no puede ser revertida" -#: templates/js/translated/stock.js:771 +#: templates/js/translated/stock.js:770 msgid "Some information will be lost when merging stock items" msgstr "Alguna información se perderá al combinar artículos de stock" -#: templates/js/translated/stock.js:773 +#: templates/js/translated/stock.js:772 msgid "Stock transaction history will be deleted for merged items" msgstr "Se eliminará el historial de transacciones de stock para elementos fusionados" -#: templates/js/translated/stock.js:774 +#: templates/js/translated/stock.js:773 msgid "Supplier part information will be deleted for merged items" msgstr "La información de la pieza del proveedor se eliminará para los artículos fusionados" -#: templates/js/translated/stock.js:863 +#: templates/js/translated/stock.js:862 msgid "Confirm stock item merge" msgstr "Confirmar fusión de artículos de stock" -#: templates/js/translated/stock.js:864 +#: templates/js/translated/stock.js:863 msgid "Merge Stock Items" msgstr "Fusionar Artículos de Stock" -#: templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:958 msgid "Transfer Stock" msgstr "Transferir Stock" -#: templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:959 msgid "Move" msgstr "Mover" -#: templates/js/translated/stock.js:966 +#: templates/js/translated/stock.js:965 msgid "Count Stock" msgstr "Contar Stock" -#: templates/js/translated/stock.js:967 +#: templates/js/translated/stock.js:966 msgid "Count" msgstr "Contar" -#: templates/js/translated/stock.js:971 +#: templates/js/translated/stock.js:970 msgid "Remove Stock" msgstr "Eliminar Stock" -#: templates/js/translated/stock.js:972 +#: templates/js/translated/stock.js:971 msgid "Take" msgstr "Tomar" -#: templates/js/translated/stock.js:976 +#: templates/js/translated/stock.js:975 msgid "Add Stock" msgstr "Añadir Stock" -#: templates/js/translated/stock.js:977 users/models.py:220 +#: templates/js/translated/stock.js:976 users/models.py:221 msgid "Add" msgstr "Añadir" -#: templates/js/translated/stock.js:981 +#: templates/js/translated/stock.js:980 msgid "Delete Stock" msgstr "Eliminar Stock" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Quantity cannot be adjusted for serialized stock" msgstr "La cantidad no se puede ajustar para el stock serializado" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Specify stock quantity" msgstr "Especificar cantidad de stock" -#: templates/js/translated/stock.js:1114 +#: templates/js/translated/stock.js:1113 msgid "You must select at least one available stock item" msgstr "Debe seleccionar al menos un artículo de stock disponible" -#: templates/js/translated/stock.js:1141 +#: templates/js/translated/stock.js:1140 msgid "Confirm stock adjustment" msgstr "Confirmar ajuste de stock" -#: templates/js/translated/stock.js:1277 +#: templates/js/translated/stock.js:1276 msgid "PASS" msgstr "PASA" -#: templates/js/translated/stock.js:1279 +#: templates/js/translated/stock.js:1278 msgid "FAIL" msgstr "FALLO" -#: templates/js/translated/stock.js:1284 +#: templates/js/translated/stock.js:1283 msgid "NO RESULT" msgstr "SIN RESULTADO" -#: templates/js/translated/stock.js:1331 +#: templates/js/translated/stock.js:1330 msgid "Pass test" msgstr "Pruebas pasadas" -#: templates/js/translated/stock.js:1334 +#: templates/js/translated/stock.js:1333 msgid "Add test result" msgstr "Añadir resultado de prueba" -#: templates/js/translated/stock.js:1360 +#: templates/js/translated/stock.js:1359 msgid "No test results found" msgstr "No se encontraron resultados de prueba" -#: templates/js/translated/stock.js:1417 +#: templates/js/translated/stock.js:1416 msgid "Test Date" msgstr "Fecha de Prueba" -#: templates/js/translated/stock.js:1582 +#: templates/js/translated/stock.js:1581 msgid "Edit Test Result" msgstr "Editar Resultados de Prueba" -#: templates/js/translated/stock.js:1604 +#: templates/js/translated/stock.js:1603 msgid "Delete Test Result" msgstr "Borrar Resultado de Prueba" -#: templates/js/translated/stock.js:1633 +#: templates/js/translated/stock.js:1632 msgid "In production" msgstr "En producción" -#: templates/js/translated/stock.js:1637 +#: templates/js/translated/stock.js:1636 msgid "Installed in Stock Item" msgstr "Instalado en el artículo de stock" -#: templates/js/translated/stock.js:1645 +#: templates/js/translated/stock.js:1644 msgid "Assigned to Sales Order" msgstr "Asignado a la Orden de Venta" -#: templates/js/translated/stock.js:1651 +#: templates/js/translated/stock.js:1650 msgid "No stock location set" msgstr "Ninguna ubicación de stock establecida" -#: templates/js/translated/stock.js:1820 +#: templates/js/translated/stock.js:1815 msgid "Stock item is in production" msgstr "El artículo de stock está en producción" -#: templates/js/translated/stock.js:1825 +#: templates/js/translated/stock.js:1820 msgid "Stock item assigned to sales order" msgstr "Artículo de stock asignado al pedido de venta" -#: templates/js/translated/stock.js:1828 +#: templates/js/translated/stock.js:1823 msgid "Stock item assigned to customer" msgstr "Artículo de stock asignado al cliente" -#: templates/js/translated/stock.js:1831 +#: templates/js/translated/stock.js:1826 msgid "Serialized stock item has been allocated" msgstr "Se ha asignado un artículo de stock serializado" -#: templates/js/translated/stock.js:1833 +#: templates/js/translated/stock.js:1828 msgid "Stock item has been fully allocated" msgstr "Artículo de stock ha sido completamente asignado" -#: templates/js/translated/stock.js:1835 +#: templates/js/translated/stock.js:1830 msgid "Stock item has been partially allocated" msgstr "Artículo de stock ha sido asignado parcialmente" -#: templates/js/translated/stock.js:1838 +#: templates/js/translated/stock.js:1833 msgid "Stock item has been installed in another item" msgstr "Artículo de stock ha sido instalado en otro artículo" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1837 msgid "Stock item has expired" msgstr "Artículo de stock ha caducado" -#: templates/js/translated/stock.js:1844 +#: templates/js/translated/stock.js:1839 msgid "Stock item will expire soon" msgstr "El artículo de stock caducará pronto" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1846 msgid "Stock item has been rejected" msgstr "Artículo de stock ha sido rechazado" -#: templates/js/translated/stock.js:1853 +#: templates/js/translated/stock.js:1848 msgid "Stock item is lost" msgstr "Artículo de stock perdido" -#: templates/js/translated/stock.js:1855 +#: templates/js/translated/stock.js:1850 msgid "Stock item is destroyed" msgstr "Artículo de stock destruido" -#: templates/js/translated/stock.js:1859 +#: templates/js/translated/stock.js:1854 #: templates/js/translated/table_filters.js:216 msgid "Depleted" msgstr "Agotado" -#: templates/js/translated/stock.js:1989 +#: templates/js/translated/stock.js:1984 msgid "Supplier part not specified" msgstr "Parte del proveedor no especificada" -#: templates/js/translated/stock.js:2026 +#: templates/js/translated/stock.js:2021 msgid "No stock items matching query" msgstr "No hay artículos de stock que coincidan con la consulta" -#: templates/js/translated/stock.js:2199 +#: templates/js/translated/stock.js:2194 msgid "Set Stock Status" msgstr "Establecer estado de stock" -#: templates/js/translated/stock.js:2213 +#: templates/js/translated/stock.js:2208 msgid "Select Status Code" msgstr "Seleccionar Código de Estado" -#: templates/js/translated/stock.js:2214 +#: templates/js/translated/stock.js:2209 msgid "Status code must be selected" msgstr "Debe seleccionar el código de estado" -#: templates/js/translated/stock.js:2446 +#: templates/js/translated/stock.js:2441 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2536 msgid "Details" msgstr "Detalles" -#: templates/js/translated/stock.js:2557 +#: templates/js/translated/stock.js:2552 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2579 +#: templates/js/translated/stock.js:2574 msgid "Location no longer exists" msgstr "Ubicación ya no existe" -#: templates/js/translated/stock.js:2598 +#: templates/js/translated/stock.js:2593 msgid "Purchase order no longer exists" msgstr "La orden de compra ya no existe" -#: templates/js/translated/stock.js:2617 +#: templates/js/translated/stock.js:2612 msgid "Customer no longer exists" msgstr "El cliente ya no existe" -#: templates/js/translated/stock.js:2635 +#: templates/js/translated/stock.js:2630 msgid "Stock item no longer exists" msgstr "Artículo de stock ya no existe" -#: templates/js/translated/stock.js:2658 +#: templates/js/translated/stock.js:2653 msgid "Added" msgstr "Añadido" -#: templates/js/translated/stock.js:2666 +#: templates/js/translated/stock.js:2661 msgid "Removed" msgstr "Eliminado" -#: templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2737 msgid "No installed items" msgstr "Ningún elemento instalado" -#: templates/js/translated/stock.js:2793 templates/js/translated/stock.js:2829 +#: templates/js/translated/stock.js:2788 templates/js/translated/stock.js:2824 msgid "Uninstall Stock Item" msgstr "Desinstalar elemento de stock" -#: templates/js/translated/stock.js:2845 +#: templates/js/translated/stock.js:2840 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2866 +#: templates/js/translated/stock.js:2861 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2867 +#: templates/js/translated/stock.js:2862 msgid "Stock items can only be installed if they meet the following criteria" msgstr "Los artículos de stock sólo pueden ser instalados si cumplen con los siguientes criterios" -#: templates/js/translated/stock.js:2869 +#: templates/js/translated/stock.js:2864 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2870 +#: templates/js/translated/stock.js:2865 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:2866 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2872 +#: templates/js/translated/stock.js:2867 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2885 +#: templates/js/translated/stock.js:2880 msgid "Select part to install" msgstr "" @@ -10699,7 +10840,7 @@ msgid "Allow Variant Stock" msgstr "Permitir stock de variante" #: templates/js/translated/table_filters.js:92 -#: templates/js/translated/table_filters.js:516 +#: templates/js/translated/table_filters.js:520 msgid "Has Pricing" msgstr "" @@ -10915,6 +11056,10 @@ msgstr "" msgid "Purchasable" msgstr "Comprable" +#: templates/js/translated/table_filters.js:504 +msgid "Has stocktake entries" +msgstr "" + #: templates/js/translated/tables.js:70 msgid "Display calendar view" msgstr "Mostrar vista de calendario" @@ -11209,35 +11354,35 @@ msgstr "Permisos" msgid "Important dates" msgstr "Fechas importantes" -#: users/models.py:207 +#: users/models.py:208 msgid "Permission set" msgstr "Permiso establecido" -#: users/models.py:215 +#: users/models.py:216 msgid "Group" msgstr "Grupo" -#: users/models.py:218 +#: users/models.py:219 msgid "View" msgstr "Vista" -#: users/models.py:218 +#: users/models.py:219 msgid "Permission to view items" msgstr "Permiso para ver elementos" -#: users/models.py:220 +#: users/models.py:221 msgid "Permission to add items" msgstr "Permiso para añadir elementos" -#: users/models.py:222 +#: users/models.py:223 msgid "Change" msgstr "Cambiar" -#: users/models.py:222 +#: users/models.py:223 msgid "Permissions to edit items" msgstr "Permisos para editar elementos" -#: users/models.py:224 +#: users/models.py:225 msgid "Permission to delete items" msgstr "Permiso para eliminar elementos" diff --git a/InvenTree/locale/es_MX/LC_MESSAGES/django.po b/InvenTree/locale/es_MX/LC_MESSAGES/django.po index a157439f08..bd7bcb6689 100644 --- a/InvenTree/locale/es_MX/LC_MESSAGES/django.po +++ b/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: 2022-12-25 08:14+0000\n" +"POT-Creation-Date: 2023-01-01 11:05+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -35,7 +35,7 @@ msgstr "" #: company/templates/company/sidebar.html:25 order/models.py:943 #: order/templates/order/po_sidebar.html:11 #: order/templates/order/so_sidebar.html:17 part/admin.py:27 -#: part/templates/part/part_sidebar.html:57 +#: part/models.py:2932 part/templates/part/part_sidebar.html:62 #: report/templates/report/inventree_build_order_base.html:172 #: stock/admin.py:103 stock/models.py:2061 stock/models.py:2169 #: stock/serializers.py:321 stock/serializers.py:454 stock/serializers.py:535 @@ -45,8 +45,8 @@ msgstr "" #: templates/js/translated/company.js:1023 #: templates/js/translated/order.js:2435 templates/js/translated/order.js:2569 #: templates/js/translated/order.js:3067 templates/js/translated/order.js:4004 -#: templates/js/translated/order.js:4385 templates/js/translated/stock.js:1413 -#: templates/js/translated/stock.js:2020 +#: templates/js/translated/order.js:4385 templates/js/translated/part.js:882 +#: templates/js/translated/stock.js:1412 templates/js/translated/stock.js:2015 msgid "Notes" msgstr "" @@ -205,18 +205,18 @@ msgstr "" msgid "Select file to attach" msgstr "" -#: InvenTree/models.py:412 common/models.py:2366 company/models.py:129 +#: InvenTree/models.py:412 common/models.py:2373 company/models.py:129 #: company/models.py:281 company/models.py:516 order/models.py:85 -#: order/models.py:1282 part/admin.py:25 part/models.py:865 +#: order/models.py:1282 part/admin.py:25 part/models.py:866 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: stock/admin.py:102 templates/js/translated/company.js:692 #: templates/js/translated/company.js:1012 -#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1608 +#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1886 msgid "Link" msgstr "" -#: InvenTree/models.py:413 build/models.py:290 part/models.py:866 +#: InvenTree/models.py:413 build/models.py:290 part/models.py:867 #: stock/models.py:716 msgid "Link to external URL" msgstr "" @@ -230,12 +230,13 @@ msgstr "" msgid "File comment" msgstr "" -#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1810 -#: common/models.py:1811 common/models.py:2034 common/models.py:2035 -#: common/models.py:2296 common/models.py:2297 part/models.py:2948 -#: part/models.py:2968 plugin/models.py:264 plugin/models.py:265 +#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1817 +#: common/models.py:1818 common/models.py:2041 common/models.py:2042 +#: common/models.py:2303 common/models.py:2304 part/models.py:2940 +#: part/models.py:3026 part/models.py:3046 plugin/models.py:264 +#: plugin/models.py:265 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2689 +#: templates/js/translated/stock.js:2684 msgid "User" msgstr "" @@ -272,19 +273,20 @@ msgstr "" msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2020 -#: company/models.py:363 label/models.py:101 part/models.py:809 -#: part/models.py:3123 plugin/models.py:94 report/models.py:152 +#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2027 +#: company/models.py:363 label/models.py:101 part/models.py:810 +#: part/models.py:3201 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 +#: templates/InvenTree/settings/notifications.html:17 #: templates/InvenTree/settings/plugin.html:60 #: templates/InvenTree/settings/plugin.html:104 #: templates/InvenTree/settings/plugin_settings.html:23 -#: templates/InvenTree/settings/settings.html:344 +#: templates/InvenTree/settings/settings.html:345 #: templates/js/translated/company.js:581 #: templates/js/translated/company.js:794 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:711 templates/js/translated/part.js:880 -#: templates/js/translated/part.js:2003 templates/js/translated/stock.js:2434 +#: templates/js/translated/part.js:982 templates/js/translated/part.js:1151 +#: templates/js/translated/part.js:2291 templates/js/translated/stock.js:2429 msgid "Name" msgstr "" @@ -293,24 +295,25 @@ msgstr "" #: company/models.py:522 company/templates/company/company_base.html:72 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:108 label/models.py:108 -#: order/models.py:83 part/admin.py:141 part/admin.py:222 part/models.py:832 -#: part/models.py:3132 part/templates/part/category.html:75 +#: order/models.py:83 part/admin.py:174 part/admin.py:255 part/models.py:833 +#: part/models.py:3210 part/templates/part/category.html:75 #: part/templates/part/part_base.html:172 #: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/admin.py:25 stock/templates/stock/location.html:117 +#: templates/InvenTree/settings/notifications.html:19 #: templates/InvenTree/settings/plugin_settings.html:28 -#: templates/InvenTree/settings/settings.html:355 +#: templates/InvenTree/settings/settings.html:356 #: templates/js/translated/bom.js:592 templates/js/translated/bom.js:895 #: templates/js/translated/build.js:2596 templates/js/translated/company.js:445 #: templates/js/translated/company.js:703 #: templates/js/translated/company.js:987 templates/js/translated/order.js:2030 #: templates/js/translated/order.js:2267 templates/js/translated/order.js:2845 -#: templates/js/translated/part.js:773 templates/js/translated/part.js:1223 -#: templates/js/translated/part.js:1490 templates/js/translated/part.js:2039 -#: templates/js/translated/part.js:2114 templates/js/translated/stock.js:1787 -#: templates/js/translated/stock.js:2466 templates/js/translated/stock.js:2526 +#: templates/js/translated/part.js:1044 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1768 templates/js/translated/part.js:2327 +#: templates/js/translated/part.js:2402 templates/js/translated/stock.js:1782 +#: templates/js/translated/stock.js:2461 templates/js/translated/stock.js:2521 msgid "Description" msgstr "" @@ -323,7 +326,7 @@ msgid "parent" msgstr "" #: InvenTree/models.py:580 InvenTree/models.py:581 -#: templates/js/translated/part.js:2048 templates/js/translated/stock.js:2475 +#: templates/js/translated/part.js:2336 templates/js/translated/stock.js:2470 msgid "Path" msgstr "" @@ -355,7 +358,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:58 part/models.py:3468 +#: InvenTree/serializers.py:58 part/models.py:3546 msgid "Must be a valid number" msgstr "" @@ -422,107 +425,107 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:639 +#: InvenTree/settings.py:642 msgid "Czech" msgstr "" -#: InvenTree/settings.py:640 +#: InvenTree/settings.py:643 msgid "Danish" msgstr "" -#: InvenTree/settings.py:641 +#: InvenTree/settings.py:644 msgid "German" msgstr "" -#: InvenTree/settings.py:642 +#: InvenTree/settings.py:645 msgid "Greek" msgstr "" -#: InvenTree/settings.py:643 +#: InvenTree/settings.py:646 msgid "English" msgstr "" -#: InvenTree/settings.py:644 +#: InvenTree/settings.py:647 msgid "Spanish" msgstr "" -#: InvenTree/settings.py:645 +#: InvenTree/settings.py:648 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:646 +#: InvenTree/settings.py:649 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:647 +#: InvenTree/settings.py:650 msgid "French" msgstr "" -#: InvenTree/settings.py:648 +#: InvenTree/settings.py:651 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:649 +#: InvenTree/settings.py:652 msgid "Hungarian" msgstr "" -#: InvenTree/settings.py:650 +#: InvenTree/settings.py:653 msgid "Italian" msgstr "" -#: InvenTree/settings.py:651 +#: InvenTree/settings.py:654 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:652 +#: InvenTree/settings.py:655 msgid "Korean" msgstr "" -#: InvenTree/settings.py:653 +#: InvenTree/settings.py:656 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:654 +#: InvenTree/settings.py:657 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:655 +#: InvenTree/settings.py:658 msgid "Polish" msgstr "" -#: InvenTree/settings.py:656 +#: InvenTree/settings.py:659 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:657 +#: InvenTree/settings.py:660 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:658 +#: InvenTree/settings.py:661 msgid "Russian" msgstr "" -#: InvenTree/settings.py:659 +#: InvenTree/settings.py:662 msgid "Slovenian" msgstr "" -#: InvenTree/settings.py:660 +#: InvenTree/settings.py:663 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:661 +#: InvenTree/settings.py:664 msgid "Thai" msgstr "" -#: InvenTree/settings.py:662 +#: InvenTree/settings.py:665 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:663 +#: InvenTree/settings.py:666 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:664 +#: InvenTree/settings.py:667 msgid "Chinese" msgstr "" @@ -653,7 +656,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2124 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2119 msgid "Merged stock items" msgstr "" @@ -757,7 +760,7 @@ msgstr "" #: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:141 -#: templates/InvenTree/settings/sidebar.html:47 +#: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:254 users/models.py:41 msgid "Build Orders" msgstr "" @@ -767,8 +770,9 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:155 order/models.py:241 order/models.py:651 -#: order/models.py:941 part/admin.py:224 part/models.py:3378 +#: order/models.py:941 part/admin.py:257 part/models.py:3456 #: part/templates/part/upload_bom.html:54 +#: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 #: templates/js/translated/bom.js:729 templates/js/translated/bom.js:905 @@ -794,13 +798,15 @@ msgstr "" #: build/models.py:180 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:684 #: order/models.py:1038 order/models.py:1149 order/models.py:1150 -#: part/models.py:381 part/models.py:2781 part/models.py:2894 -#: part/models.py:2909 part/models.py:2928 part/models.py:2946 -#: part/models.py:3045 part/models.py:3166 part/models.py:3258 -#: part/models.py:3343 part/models.py:3659 part/serializers.py:853 -#: part/templates/part/part_app_base.html:8 +#: part/models.py:382 part/models.py:2799 part/models.py:2912 +#: part/models.py:2972 part/models.py:2987 part/models.py:3006 +#: part/models.py:3024 part/models.py:3123 part/models.py:3244 +#: part/models.py:3336 part/models.py:3421 part/models.py:3737 +#: part/serializers.py:894 part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 +#: report/templates/report/inventree_bill_of_materials_report.html:110 +#: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_base.html:109 #: report/templates/report/inventree_po_report.html:89 #: report/templates/report/inventree_so_report.html:90 stock/serializers.py:90 @@ -820,12 +826,12 @@ msgstr "" #: templates/js/translated/order.js:1172 templates/js/translated/order.js:1676 #: templates/js/translated/order.js:2252 templates/js/translated/order.js:3199 #: templates/js/translated/order.js:3595 templates/js/translated/order.js:3825 -#: templates/js/translated/part.js:1208 templates/js/translated/part.js:1280 -#: templates/js/translated/part.js:1467 templates/js/translated/pricing.js:102 -#: templates/js/translated/stock.js:618 templates/js/translated/stock.js:783 -#: templates/js/translated/stock.js:993 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2552 templates/js/translated/stock.js:2747 -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/part.js:1479 templates/js/translated/part.js:1551 +#: templates/js/translated/part.js:1745 templates/js/translated/pricing.js:102 +#: templates/js/translated/stock.js:617 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:992 templates/js/translated/stock.js:1738 +#: templates/js/translated/stock.js:2547 templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2879 msgid "Part" msgstr "" @@ -891,7 +897,7 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:252 order/models.py:87 part/models.py:1001 +#: build/models.py:252 order/models.py:87 part/models.py:1002 #: part/templates/part/part_base.html:318 templates/js/translated/order.js:2858 msgid "Creation Date" msgstr "" @@ -924,7 +930,7 @@ msgstr "" #: build/models.py:283 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:101 #: order/templates/order/order_base.html:185 -#: order/templates/order/sales_order_base.html:183 part/models.py:1005 +#: order/templates/order/sales_order_base.html:183 part/models.py:1006 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2658 templates/js/translated/order.js:2064 msgid "Responsible" @@ -937,7 +943,7 @@ msgstr "" #: build/models.py:289 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:188 -#: part/templates/part/part_base.html:376 stock/models.py:714 +#: part/templates/part/part_base.html:390 stock/models.py:714 #: stock/templates/stock/item_base.html:203 msgid "External Link" msgstr "" @@ -1012,8 +1018,8 @@ msgstr "" #: templates/js/translated/order.js:107 templates/js/translated/order.js:3200 #: templates/js/translated/order.js:3502 templates/js/translated/order.js:3507 #: templates/js/translated/order.js:3602 templates/js/translated/order.js:3694 -#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 -#: templates/js/translated/stock.js:2625 +#: templates/js/translated/part.js:803 templates/js/translated/stock.js:618 +#: templates/js/translated/stock.js:783 templates/js/translated/stock.js:2620 msgid "Stock Item" msgstr "" @@ -1023,12 +1029,13 @@ msgstr "" #: build/models.py:1364 build/serializers.py:192 #: build/templates/build/build_base.html:85 -#: build/templates/build/detail.html:34 common/models.py:1842 +#: build/templates/build/detail.html:34 common/models.py:1849 #: order/models.py:934 order/models.py:1460 order/serializers.py:1206 -#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:223 -#: part/forms.py:40 part/models.py:3359 +#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:256 +#: part/forms.py:40 part/models.py:2919 part/models.py:3437 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 +#: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_base.html:113 #: report/templates/report/inventree_po_report.html:90 #: report/templates/report/inventree_so_report.html:91 @@ -1050,13 +1057,14 @@ msgstr "" #: templates/js/translated/order.js:3201 templates/js/translated/order.js:3521 #: templates/js/translated/order.js:3608 templates/js/translated/order.js:3700 #: templates/js/translated/order.js:3847 templates/js/translated/order.js:4338 -#: templates/js/translated/part.js:1078 templates/js/translated/part.js:2561 +#: templates/js/translated/part.js:805 templates/js/translated/part.js:876 +#: templates/js/translated/part.js:1349 templates/js/translated/part.js:2849 #: templates/js/translated/pricing.js:114 #: templates/js/translated/pricing.js:207 #: templates/js/translated/pricing.js:255 -#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:490 -#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:814 -#: templates/js/translated/stock.js:2674 templates/js/translated/stock.js:2759 +#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:489 +#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:813 +#: templates/js/translated/stock.js:2669 templates/js/translated/stock.js:2754 msgid "Quantity" msgstr "" @@ -1098,8 +1106,8 @@ msgid "Enter quantity for build output" msgstr "" #: build/serializers.py:207 build/serializers.py:683 order/models.py:327 -#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:645 -#: part/serializers.py:1016 stock/models.py:574 stock/models.py:1312 +#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:686 +#: part/serializers.py:1057 stock/models.py:574 stock/models.py:1312 #: stock/serializers.py:294 msgid "Quantity must be greater than zero" msgstr "" @@ -1114,7 +1122,7 @@ msgstr "" #: build/serializers.py:231 order/serializers.py:463 order/serializers.py:1210 #: stock/serializers.py:303 templates/js/translated/order.js:1545 -#: templates/js/translated/stock.js:303 templates/js/translated/stock.js:491 +#: templates/js/translated/stock.js:302 templates/js/translated/stock.js:490 msgid "Serial Numbers" msgstr "" @@ -1147,9 +1155,10 @@ msgstr "" #: templates/js/translated/build.js:1759 templates/js/translated/order.js:1572 #: templates/js/translated/order.js:3514 templates/js/translated/order.js:3619 #: templates/js/translated/order.js:3627 templates/js/translated/order.js:3708 -#: templates/js/translated/part.js:183 templates/js/translated/stock.js:620 -#: templates/js/translated/stock.js:785 templates/js/translated/stock.js:995 -#: templates/js/translated/stock.js:1895 templates/js/translated/stock.js:2566 +#: templates/js/translated/part.js:186 templates/js/translated/part.js:804 +#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 +#: templates/js/translated/stock.js:994 templates/js/translated/stock.js:1890 +#: templates/js/translated/stock.js:2561 msgid "Location" msgstr "" @@ -1163,8 +1172,8 @@ msgstr "" #: stock/templates/stock/item_base.html:421 #: templates/js/translated/barcode.js:237 templates/js/translated/build.js:2630 #: templates/js/translated/order.js:1681 templates/js/translated/order.js:2034 -#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1870 -#: templates/js/translated/stock.js:2643 templates/js/translated/stock.js:2775 +#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:2638 templates/js/translated/stock.js:2770 msgid "Status" msgstr "" @@ -1240,8 +1249,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:595 build/serializers.py:640 part/models.py:3495 -#: part/models.py:3651 +#: build/serializers.py:595 build/serializers.py:640 part/models.py:3573 +#: part/models.py:3729 msgid "BOM Item" msgstr "" @@ -1407,7 +1416,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2670 templates/js/translated/order.js:2051 #: templates/js/translated/order.js:2382 templates/js/translated/order.js:2866 -#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1093 +#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1364 msgid "Target Date" msgstr "" @@ -1485,8 +1494,8 @@ msgstr "" #: stock/templates/stock/item_base.html:168 #: templates/js/translated/build.js:1250 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:1884 -#: templates/js/translated/stock.js:2782 +#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:1879 +#: templates/js/translated/stock.js:2777 #: templates/js/translated/table_filters.js:179 #: templates/js/translated/table_filters.js:270 msgid "Batch" @@ -1618,8 +1627,8 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:86 #: order/templates/order/sales_order_detail.html:140 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:210 -#: part/templates/part/part_sidebar.html:55 stock/templates/stock/item.html:117 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:233 +#: part/templates/part/part_sidebar.html:60 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" msgstr "" @@ -1636,7 +1645,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:316 +#: build/templates/build/index.html:18 part/templates/part/detail.html:339 msgid "New Build Order" msgstr "" @@ -1929,9 +1938,9 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1014 part/admin.py:41 part/models.py:3168 +#: common/models.py:1014 part/admin.py:41 part/models.py:3246 #: report/models.py:158 templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:504 +#: templates/js/translated/table_filters.js:508 msgid "Template" msgstr "" @@ -1939,7 +1948,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:1021 part/admin.py:37 part/admin.py:229 part/models.py:957 +#: common/models.py:1021 part/admin.py:37 part/admin.py:262 part/models.py:958 #: templates/js/translated/bom.js:1595 #: templates/js/translated/table_filters.js:196 #: templates/js/translated/table_filters.js:467 @@ -1950,7 +1959,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1028 part/admin.py:38 part/models.py:963 +#: common/models.py:1028 part/admin.py:38 part/models.py:964 #: templates/js/translated/table_filters.js:475 msgid "Component" msgstr "" @@ -1959,7 +1968,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1035 part/admin.py:39 part/models.py:974 +#: common/models.py:1035 part/admin.py:39 part/models.py:975 msgid "Purchaseable" msgstr "" @@ -1967,7 +1976,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1042 part/admin.py:40 part/models.py:979 +#: common/models.py:1042 part/admin.py:40 part/models.py:980 #: templates/js/translated/table_filters.js:496 msgid "Salable" msgstr "" @@ -1976,10 +1985,10 @@ msgstr "" msgid "Parts are salable by default" msgstr "" -#: common/models.py:1049 part/admin.py:42 part/models.py:969 +#: common/models.py:1049 part/admin.py:42 part/models.py:970 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:120 -#: templates/js/translated/table_filters.js:508 +#: templates/js/translated/table_filters.js:512 msgid "Trackable" msgstr "" @@ -1987,10 +1996,10 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1056 part/admin.py:43 part/models.py:989 +#: common/models.py:1056 part/admin.py:43 part/models.py:990 #: part/templates/part/part_base.html:156 #: templates/js/translated/table_filters.js:42 -#: templates/js/translated/table_filters.js:512 +#: templates/js/translated/table_filters.js:516 msgid "Virtual" msgstr "" @@ -2418,7 +2427,7 @@ msgstr "" msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1461 common/models.py:1803 +#: common/models.py:1461 common/models.py:1810 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -2750,41 +2759,50 @@ msgstr "" msgid "Display part scheduling information" msgstr "" -#: common/models.py:1778 -msgid "Table String Length" +#: common/models.py:1778 part/templates/part/detail.html:61 +#: templates/js/translated/part.js:822 +msgid "Part Stocktake" msgstr "" #: common/models.py:1779 +msgid "Display part stocktake information" +msgstr "" + +#: common/models.py:1785 +msgid "Table String Length" +msgstr "" + +#: common/models.py:1786 msgid "Maximimum length limit for strings displayed in table views" msgstr "" -#: common/models.py:1843 +#: common/models.py:1850 msgid "Price break quantity" msgstr "" -#: common/models.py:1850 company/serializers.py:393 order/models.py:975 -#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1145 +#: common/models.py:1857 company/serializers.py:393 order/models.py:975 +#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1416 #: templates/js/translated/pricing.js:354 msgid "Price" msgstr "" -#: common/models.py:1851 +#: common/models.py:1858 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2011 common/models.py:2189 +#: common/models.py:2018 common/models.py:2196 msgid "Endpoint" msgstr "" -#: common/models.py:2012 +#: common/models.py:2019 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2021 +#: common/models.py:2028 msgid "Name for this webhook" msgstr "" -#: common/models.py:2026 part/admin.py:36 part/models.py:984 +#: common/models.py:2033 part/admin.py:36 part/models.py:985 #: plugin/models.py:100 templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:116 #: templates/js/translated/table_filters.js:336 @@ -2792,131 +2810,133 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:2027 +#: common/models.py:2034 msgid "Is this webhook active" msgstr "" -#: common/models.py:2041 +#: common/models.py:2048 msgid "Token" msgstr "" -#: common/models.py:2042 +#: common/models.py:2049 msgid "Token for access" msgstr "" -#: common/models.py:2049 +#: common/models.py:2056 msgid "Secret" msgstr "" -#: common/models.py:2050 +#: common/models.py:2057 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2156 +#: common/models.py:2163 msgid "Message ID" msgstr "" -#: common/models.py:2157 +#: common/models.py:2164 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2165 +#: common/models.py:2172 msgid "Host" msgstr "" -#: common/models.py:2166 +#: common/models.py:2173 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2173 +#: common/models.py:2180 msgid "Header" msgstr "" -#: common/models.py:2174 +#: common/models.py:2181 msgid "Header of this message" msgstr "" -#: common/models.py:2180 +#: common/models.py:2187 msgid "Body" msgstr "" -#: common/models.py:2181 +#: common/models.py:2188 msgid "Body of this message" msgstr "" -#: common/models.py:2190 +#: common/models.py:2197 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2195 +#: common/models.py:2202 msgid "Worked on" msgstr "" -#: common/models.py:2196 +#: common/models.py:2203 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2355 +#: common/models.py:2362 msgid "Id" msgstr "" -#: common/models.py:2361 templates/js/translated/news.js:35 +#: common/models.py:2368 templates/js/translated/news.js:35 msgid "Title" msgstr "" -#: common/models.py:2371 templates/js/translated/news.js:51 +#: common/models.py:2378 templates/js/translated/news.js:51 msgid "Published" msgstr "" -#: common/models.py:2376 templates/InvenTree/settings/plugin.html:62 +#: common/models.py:2383 templates/InvenTree/settings/plugin.html:62 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/news.js:47 msgid "Author" msgstr "" -#: common/models.py:2381 templates/js/translated/news.js:43 +#: common/models.py:2388 templates/js/translated/news.js:43 msgid "Summary" msgstr "" -#: common/models.py:2386 +#: common/models.py:2393 msgid "Read" msgstr "" -#: common/models.py:2387 +#: common/models.py:2394 msgid "Was this news item read?" msgstr "" -#: common/notifications.py:293 +#: common/notifications.py:294 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:295 +#: common/notifications.py:296 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:301 +#: common/notifications.py:302 msgid "Items Received" msgstr "" -#: common/notifications.py:303 +#: common/notifications.py:304 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:415 +#: common/notifications.py:416 msgid "Error raised by plugin" msgstr "" #: common/views.py:85 order/templates/order/order_wizard/po_upload.html:51 #: order/templates/order/purchase_order_detail.html:25 order/views.py:102 -#: part/views.py:107 templates/patterns/wizard/upload.html:37 +#: part/templates/part/import_wizard/part_upload.html:58 part/views.py:109 +#: templates/patterns/wizard/upload.html:37 msgid "Upload File" msgstr "" #: common/views.py:86 order/templates/order/order_wizard/match_fields.html:52 #: order/views.py:103 #: part/templates/part/import_wizard/ajax_match_fields.html:45 -#: part/views.py:108 templates/patterns/wizard/match_fields.html:51 +#: part/templates/part/import_wizard/match_fields.html:52 part/views.py:110 +#: templates/patterns/wizard/match_fields.html:51 msgid "Match Fields" msgstr "" @@ -2935,7 +2955,9 @@ msgstr "" #: common/views.py:509 order/templates/order/order_wizard/match_fields.html:27 #: order/templates/order/order_wizard/match_parts.html:19 #: order/templates/order/order_wizard/po_upload.html:49 +#: part/templates/part/import_wizard/match_fields.html:27 #: part/templates/part/import_wizard/match_references.html:19 +#: part/templates/part/import_wizard/part_upload.html:56 #: templates/patterns/wizard/match_fields.html:26 #: templates/patterns/wizard/upload.html:35 msgid "Previous Step" @@ -2996,7 +3018,7 @@ msgstr "" msgid "Link to external company information" msgstr "" -#: company/models.py:140 part/models.py:878 +#: company/models.py:140 part/models.py:879 msgid "Image" msgstr "" @@ -3029,8 +3051,8 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:153 company/serializers.py:399 -#: company/templates/company/company_base.html:107 part/models.py:2762 -#: part/serializers.py:154 part/serializers.py:182 stock/serializers.py:182 +#: company/templates/company/company_base.html:107 part/models.py:2780 +#: part/serializers.py:156 part/serializers.py:184 stock/serializers.py:182 #: templates/InvenTree/settings/pricing.html:64 msgid "Currency" msgstr "" @@ -3056,12 +3078,12 @@ msgstr "" #: templates/js/translated/company.js:433 #: templates/js/translated/company.js:534 #: templates/js/translated/company.js:669 -#: templates/js/translated/company.js:957 templates/js/translated/part.js:238 +#: templates/js/translated/company.js:957 templates/js/translated/part.js:241 #: templates/js/translated/table_filters.js:439 msgid "Manufacturer" msgstr "" -#: company/models.py:269 templates/js/translated/part.js:239 +#: company/models.py:269 templates/js/translated/part.js:242 msgid "Select manufacturer" msgstr "" @@ -3071,11 +3093,11 @@ msgstr "" #: templates/js/translated/company.js:533 #: templates/js/translated/company.js:685 #: templates/js/translated/company.js:976 templates/js/translated/order.js:2286 -#: templates/js/translated/part.js:249 templates/js/translated/part.js:1067 +#: templates/js/translated/part.js:252 templates/js/translated/part.js:1338 msgid "MPN" msgstr "" -#: company/models.py:276 templates/js/translated/part.js:250 +#: company/models.py:276 templates/js/translated/part.js:253 msgid "Manufacturer Part Number" msgstr "" @@ -3101,8 +3123,8 @@ msgstr "" #: company/models.py:370 #: report/templates/report/inventree_test_report_base.html:95 #: stock/models.py:2156 templates/js/translated/company.js:582 -#: templates/js/translated/company.js:800 templates/js/translated/part.js:889 -#: templates/js/translated/stock.js:1399 +#: templates/js/translated/company.js:800 templates/js/translated/part.js:1160 +#: templates/js/translated/stock.js:1398 msgid "Value" msgstr "" @@ -3110,10 +3132,10 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:377 part/admin.py:26 part/models.py:951 -#: part/models.py:3128 part/templates/part/part_base.html:286 -#: templates/InvenTree/settings/settings.html:349 -#: templates/js/translated/company.js:806 templates/js/translated/part.js:895 +#: company/models.py:377 part/admin.py:26 part/models.py:952 +#: part/models.py:3206 part/templates/part/part_base.html:286 +#: templates/InvenTree/settings/settings.html:350 +#: templates/js/translated/company.js:806 templates/js/translated/part.js:1166 msgid "Units" msgstr "" @@ -3133,24 +3155,24 @@ msgstr "" #: templates/js/translated/company.js:304 #: templates/js/translated/company.js:437 #: templates/js/translated/company.js:930 templates/js/translated/order.js:2017 -#: templates/js/translated/part.js:219 templates/js/translated/part.js:1035 +#: templates/js/translated/part.js:222 templates/js/translated/part.js:1306 #: templates/js/translated/pricing.js:231 #: templates/js/translated/table_filters.js:443 msgid "Supplier" msgstr "" -#: company/models.py:498 templates/js/translated/part.js:220 +#: company/models.py:498 templates/js/translated/part.js:223 msgid "Select supplier" msgstr "" #: company/models.py:503 company/templates/company/supplier_part.html:146 #: part/bom.py:253 part/bom.py:281 templates/js/translated/company.js:303 -#: templates/js/translated/order.js:2273 templates/js/translated/part.js:230 -#: templates/js/translated/part.js:1053 templates/js/translated/pricing.js:243 +#: templates/js/translated/order.js:2273 templates/js/translated/part.js:233 +#: templates/js/translated/part.js:1324 templates/js/translated/pricing.js:243 msgid "SKU" msgstr "" -#: company/models.py:504 templates/js/translated/part.js:231 +#: company/models.py:504 templates/js/translated/part.js:234 msgid "Supplier stock keeping unit" msgstr "" @@ -3167,24 +3189,25 @@ msgid "Supplier part description" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:181 -#: part/admin.py:225 part/models.py:3381 part/templates/part/upload_bom.html:59 +#: part/admin.py:258 part/models.py:3459 part/templates/part/upload_bom.html:59 +#: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:397 msgid "Note" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "base cost" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:534 company/templates/company/supplier_part.html:167 #: stock/admin.py:101 stock/models.py:682 #: stock/templates/stock/item_base.html:243 -#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2016 +#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2011 msgid "Packaging" msgstr "" @@ -3197,7 +3220,7 @@ msgstr "" #: templates/js/translated/company.js:997 templates/js/translated/order.js:826 #: templates/js/translated/order.js:1253 templates/js/translated/order.js:1508 #: templates/js/translated/order.js:2317 templates/js/translated/order.js:2334 -#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1137 +#: templates/js/translated/part.js:1356 templates/js/translated/part.js:1408 msgid "Pack Quantity" msgstr "" @@ -3205,7 +3228,7 @@ msgstr "" msgid "Unit quantity supplied in a single pack" msgstr "" -#: company/models.py:544 part/models.py:1863 +#: company/models.py:544 part/models.py:1869 msgid "multiple" msgstr "" @@ -3217,8 +3240,8 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:1118 templates/js/translated/build.js:1883 -#: templates/js/translated/build.js:2770 templates/js/translated/part.js:623 -#: templates/js/translated/part.js:626 +#: templates/js/translated/build.js:2770 templates/js/translated/part.js:626 +#: templates/js/translated/part.js:629 #: templates/js/translated/table_filters.js:206 msgid "Available" msgstr "" @@ -3301,7 +3324,7 @@ msgstr "" #: stock/templates/stock/item_base.html:399 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:429 templates/js/translated/order.js:2827 -#: templates/js/translated/stock.js:2607 +#: templates/js/translated/stock.js:2602 #: templates/js/translated/table_filters.js:447 msgid "Customer" msgstr "" @@ -3315,7 +3338,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:206 -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:525 msgid "Remove Image" msgstr "" @@ -3324,19 +3347,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:209 -#: part/templates/part/part_base.html:514 +#: part/templates/part/part_base.html:528 #: templates/InvenTree/settings/user.html:87 #: templates/InvenTree/settings/user.html:149 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:238 -#: part/templates/part/part_base.html:543 +#: part/templates/part/part_base.html:557 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:253 -#: part/templates/part/part_base.html:598 +#: part/templates/part/part_base.html:612 msgid "Download Image" msgstr "" @@ -3352,7 +3375,7 @@ msgstr "" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:357 +#: part/templates/part/detail.html:380 msgid "New Supplier Part" msgstr "" @@ -3381,7 +3404,7 @@ msgstr "" msgid "Create new manufacturer part" msgstr "" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:387 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:410 msgid "New Manufacturer Part" msgstr "" @@ -3395,9 +3418,9 @@ msgstr "" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:35 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:35 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:200 -#: templates/InvenTree/settings/sidebar.html:49 +#: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:293 templates/navbar.html:50 #: users/models.py:42 msgid "Purchase Orders" @@ -3418,9 +3441,9 @@ msgstr "" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:39 +#: part/templates/part/detail.html:130 part/templates/part/part_sidebar.html:39 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:220 -#: templates/InvenTree/settings/sidebar.html:51 +#: templates/InvenTree/settings/sidebar.html:53 #: templates/js/translated/search.js:317 templates/navbar.html:61 #: users/models.py:43 msgid "Sales Orders" @@ -3452,7 +3475,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:221 -#: part/templates/part/detail.html:87 part/templates/part/part_base.html:85 +#: part/templates/part/detail.html:110 part/templates/part/part_base.html:85 msgid "Order part" msgstr "" @@ -3483,28 +3506,28 @@ msgid "Suppliers" msgstr "" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:368 +#: part/templates/part/detail.html:391 msgid "Delete supplier parts" msgstr "" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:369 part/templates/part/detail.html:399 -#: templates/js/translated/forms.js:455 templates/js/translated/helpers.js:38 -#: templates/js/translated/part.js:351 templates/js/translated/stock.js:188 -#: users/models.py:224 +#: part/templates/part/detail.html:392 part/templates/part/detail.html:422 +#: templates/js/translated/forms.js:458 templates/js/translated/helpers.js:38 +#: templates/js/translated/part.js:354 templates/js/translated/stock.js:187 +#: users/models.py:225 msgid "Delete" msgstr "" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:184 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:207 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:189 +#: part/templates/part/detail.html:212 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:62 msgid "New Parameter" @@ -3515,7 +3538,7 @@ msgid "Delete parameters" msgstr "" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:825 +#: part/templates/part/detail.html:865 msgid "Add Parameter" msgstr "" @@ -3539,7 +3562,7 @@ msgstr "" #: company/templates/company/supplier_part.html:24 stock/models.py:665 #: stock/templates/stock/item_base.html:236 #: templates/js/translated/company.js:946 templates/js/translated/order.js:1173 -#: templates/js/translated/stock.js:1974 +#: templates/js/translated/stock.js:1969 msgid "Supplier Part" msgstr "" @@ -3579,7 +3602,7 @@ msgstr "" #: company/templates/company/supplier_part.html:56 #: company/templates/company/supplier_part.html:57 #: company/templates/company/supplier_part.html:222 -#: part/templates/part/detail.html:88 +#: part/templates/part/detail.html:111 msgid "Order Part" msgstr "" @@ -3631,7 +3654,7 @@ msgstr "" #: company/templates/company/supplier_part.html:204 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:198 -#: templates/js/translated/stock.js:467 +#: templates/js/translated/stock.js:466 msgid "New Stock Item" msgstr "" @@ -3663,10 +3686,10 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 -#: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/part.js:777 templates/js/translated/part.js:1371 -#: templates/js/translated/part.js:1527 templates/js/translated/stock.js:994 -#: templates/js/translated/stock.js:1799 templates/navbar.html:31 +#: templates/InvenTree/settings/sidebar.html:47 +#: templates/js/translated/part.js:1048 templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1805 templates/js/translated/stock.js:993 +#: templates/js/translated/stock.js:1794 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3681,7 +3704,7 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:29 #: part/templates/part/part_sidebar.html:30 -#: templates/InvenTree/settings/sidebar.html:35 +#: templates/InvenTree/settings/sidebar.html:37 msgid "Pricing" msgstr "" @@ -3693,7 +3716,7 @@ msgstr "" #: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:155 templates/js/translated/search.js:225 -#: templates/js/translated/stock.js:2484 users/models.py:40 +#: templates/js/translated/stock.js:2479 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3802,9 +3825,9 @@ msgstr "" #: stock/templates/stock/item_base.html:182 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:619 templates/js/translated/order.js:1174 -#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1012 -#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1954 -#: templates/js/translated/stock.js:2588 +#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1283 +#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1949 +#: templates/js/translated/stock.js:2583 msgid "Purchase Order" msgstr "" @@ -3974,7 +3997,7 @@ msgstr "" #: order/models.py:1046 order/templates/order/order_base.html:178 #: templates/js/translated/order.js:1679 templates/js/translated/order.js:2404 -#: templates/js/translated/part.js:1129 templates/js/translated/part.js:1161 +#: templates/js/translated/part.js:1400 templates/js/translated/part.js:1432 #: templates/js/translated/table_filters.js:358 msgid "Received" msgstr "" @@ -3985,7 +4008,7 @@ msgstr "" #: order/models.py:1054 stock/models.py:800 stock/serializers.py:173 #: stock/templates/stock/item_base.html:189 -#: templates/js/translated/stock.js:2005 +#: templates/js/translated/stock.js:2000 msgid "Purchase Price" msgstr "" @@ -4351,18 +4374,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:9 #: part/templates/part/import_wizard/ajax_match_fields.html:9 +#: part/templates/part/import_wizard/match_fields.html:9 #: templates/patterns/wizard/match_fields.html:8 msgid "Missing selections for the following required columns" msgstr "" #: order/templates/order/order_wizard/match_fields.html:20 #: part/templates/part/import_wizard/ajax_match_fields.html:20 +#: part/templates/part/import_wizard/match_fields.html:20 #: templates/patterns/wizard/match_fields.html:19 msgid "Duplicate selections found, see below. Fix them then retry submitting." msgstr "" #: order/templates/order/order_wizard/match_fields.html:29 #: order/templates/order/order_wizard/match_parts.html:21 +#: part/templates/part/import_wizard/match_fields.html:29 #: part/templates/part/import_wizard/match_references.html:21 #: templates/patterns/wizard/match_fields.html:28 msgid "Submit Selections" @@ -4370,18 +4396,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:35 #: part/templates/part/import_wizard/ajax_match_fields.html:28 +#: part/templates/part/import_wizard/match_fields.html:35 #: templates/patterns/wizard/match_fields.html:34 msgid "File Fields" msgstr "" #: order/templates/order/order_wizard/match_fields.html:42 #: part/templates/part/import_wizard/ajax_match_fields.html:35 +#: part/templates/part/import_wizard/match_fields.html:42 #: templates/patterns/wizard/match_fields.html:41 msgid "Remove column" msgstr "" #: order/templates/order/order_wizard/match_fields.html:60 #: part/templates/part/import_wizard/ajax_match_fields.html:53 +#: part/templates/part/import_wizard/match_fields.html:60 #: templates/patterns/wizard/match_fields.html:59 msgid "Duplicate selection" msgstr "" @@ -4390,12 +4419,13 @@ msgstr "" #: order/templates/order/order_wizard/match_parts.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: 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:102 templates/js/translated/build.js:485 #: templates/js/translated/build.js:641 templates/js/translated/build.js:2088 #: templates/js/translated/order.js:1122 templates/js/translated/order.js:1624 -#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:657 -#: templates/js/translated/stock.js:825 +#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:824 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4430,6 +4460,7 @@ msgstr "" #: order/templates/order/order_wizard/po_upload.html:27 #: part/templates/part/import_wizard/ajax_part_upload.html:10 +#: part/templates/part/import_wizard/part_upload.html:26 #: templates/patterns/wizard/upload.html:13 #, python-format msgid "Step %(step)s of %(count)s" @@ -4568,12 +4599,12 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:19 part/admin.py:219 part/models.py:3262 stock/admin.py:84 +#: part/admin.py:19 part/admin.py:252 part/models.py:3340 stock/admin.py:84 #: templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/admin.py:20 part/admin.py:221 part/models.py:3266 stock/admin.py:85 +#: part/admin.py:20 part/admin.py:254 part/models.py:3344 stock/admin.py:85 msgid "Part Name" msgstr "" @@ -4581,32 +4612,32 @@ msgstr "" msgid "Part Description" msgstr "" -#: part/admin.py:22 part/models.py:852 part/templates/part/part_base.html:272 -#: templates/js/translated/part.js:763 templates/js/translated/part.js:1484 -#: templates/js/translated/stock.js:1765 +#: part/admin.py:22 part/models.py:853 part/templates/part/part_base.html:272 +#: templates/js/translated/part.js:1034 templates/js/translated/part.js:1762 +#: templates/js/translated/stock.js:1760 msgid "IPN" msgstr "" -#: part/admin.py:23 part/models.py:860 part/templates/part/part_base.html:279 -#: report/models.py:171 templates/js/translated/part.js:768 +#: part/admin.py:23 part/models.py:861 part/templates/part/part_base.html:279 +#: report/models.py:171 templates/js/translated/part.js:1039 msgid "Revision" msgstr "" -#: part/admin.py:24 part/admin.py:145 part/models.py:838 +#: part/admin.py:24 part/admin.py:178 part/models.py:839 #: part/templates/part/category.html:87 part/templates/part/part_base.html:300 msgid "Keywords" msgstr "" -#: part/admin.py:28 part/admin.py:139 +#: part/admin.py:28 part/admin.py:172 #: templates/js/translated/model_renderers.js:338 msgid "Category ID" msgstr "" -#: part/admin.py:29 part/admin.py:140 +#: part/admin.py:29 part/admin.py:173 msgid "Category Name" msgstr "" -#: part/admin.py:30 part/admin.py:144 +#: part/admin.py:30 part/admin.py:177 msgid "Default Location ID" msgstr "" @@ -4614,7 +4645,7 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:33 part/models.py:944 part/templates/part/part_base.html:206 +#: part/admin.py:33 part/models.py:945 part/templates/part/part_base.html:206 msgid "Minimum Stock" msgstr "" @@ -4626,8 +4657,8 @@ msgstr "" #: part/admin.py:48 part/bom.py:145 part/templates/part/part_base.html:213 #: templates/js/translated/bom.js:1156 templates/js/translated/build.js:1935 -#: templates/js/translated/part.js:613 templates/js/translated/part.js:633 -#: templates/js/translated/part.js:1374 templates/js/translated/part.js:1552 +#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 +#: templates/js/translated/part.js:1652 templates/js/translated/part.js:1830 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4643,115 +4674,115 @@ msgid "Allocated" msgstr "" #: part/admin.py:51 part/templates/part/part_base.html:244 -#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 -#: templates/js/translated/part.js:1378 templates/js/translated/part.js:1559 +#: templates/js/translated/part.js:619 templates/js/translated/part.js:639 +#: templates/js/translated/part.js:1656 templates/js/translated/part.js:1837 msgid "Building" msgstr "" -#: part/admin.py:52 part/models.py:2846 +#: part/admin.py:52 part/models.py:2864 msgid "Minimum Cost" msgstr "" -#: part/admin.py:53 part/models.py:2852 +#: part/admin.py:53 part/models.py:2870 msgid "Maximum Cost" msgstr "" -#: part/admin.py:142 part/admin.py:216 stock/admin.py:26 stock/admin.py:98 +#: part/admin.py:175 part/admin.py:249 stock/admin.py:26 stock/admin.py:98 msgid "Parent ID" msgstr "" -#: part/admin.py:143 part/admin.py:218 stock/admin.py:27 +#: part/admin.py:176 part/admin.py:251 stock/admin.py:27 msgid "Parent Name" msgstr "" -#: part/admin.py:146 part/templates/part/category.html:81 +#: part/admin.py:179 part/templates/part/category.html:81 #: part/templates/part/category.html:94 msgid "Category Path" msgstr "" -#: part/admin.py:149 part/models.py:382 part/templates/part/cat_link.html:3 +#: part/admin.py:182 part/models.py:383 part/templates/part/cat_link.html:3 #: part/templates/part/category.html:23 part/templates/part/category.html:134 #: part/templates/part/category.html:154 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:84 -#: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:2058 templates/js/translated/search.js:146 +#: templates/InvenTree/settings/sidebar.html:43 +#: templates/js/translated/part.js:2346 templates/js/translated/search.js:146 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" -#: part/admin.py:211 +#: part/admin.py:244 msgid "BOM Level" msgstr "" -#: part/admin.py:213 +#: part/admin.py:246 msgid "BOM Item ID" msgstr "" -#: part/admin.py:217 +#: part/admin.py:250 msgid "Parent IPN" msgstr "" -#: part/admin.py:220 part/models.py:3270 +#: part/admin.py:253 part/models.py:3348 msgid "Part IPN" msgstr "" -#: part/admin.py:226 templates/js/translated/pricing.js:91 +#: part/admin.py:259 templates/js/translated/pricing.js:91 #: templates/js/translated/pricing.js:732 msgid "Minimum Price" msgstr "" -#: part/admin.py:227 templates/js/translated/pricing.js:86 +#: part/admin.py:260 templates/js/translated/pricing.js:86 #: templates/js/translated/pricing.js:740 msgid "Maximum Price" msgstr "" -#: part/api.py:536 +#: part/api.py:538 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:556 +#: part/api.py:558 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:574 +#: part/api.py:576 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:660 +#: part/api.py:662 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:818 +#: part/api.py:820 msgid "Valid" msgstr "" -#: part/api.py:819 +#: part/api.py:821 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:825 +#: part/api.py:827 msgid "This option must be selected" msgstr "" -#: part/api.py:1265 +#: part/api.py:1281 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1269 +#: part/api.py:1285 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1284 +#: part/api.py:1300 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1315 part/api.py:1319 part/api.py:1334 part/api.py:1338 +#: part/api.py:1331 part/api.py:1335 part/api.py:1350 part/api.py:1354 msgid "This field is required" msgstr "" -#: part/bom.py:142 part/models.py:116 part/models.py:887 -#: part/templates/part/category.html:109 part/templates/part/part_base.html:360 +#: part/bom.py:142 part/models.py:116 part/models.py:888 +#: part/templates/part/category.html:109 part/templates/part/part_base.html:374 msgid "Default Location" msgstr "" @@ -4802,7 +4833,7 @@ msgstr "" msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:159 part/models.py:3211 part/templates/part/category.html:16 +#: part/models.py:159 part/models.py:3289 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -4813,423 +4844,459 @@ msgstr "" msgid "Part Categories" msgstr "" -#: part/models.py:468 +#: part/models.py:469 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:538 part/models.py:550 +#: part/models.py:539 part/models.py:551 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:640 +#: part/models.py:641 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:771 +#: part/models.py:772 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:776 +#: part/models.py:777 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:790 +#: part/models.py:791 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:808 part/models.py:3267 +#: part/models.py:809 part/models.py:3345 msgid "Part name" msgstr "" -#: part/models.py:815 +#: part/models.py:816 msgid "Is Template" msgstr "" -#: part/models.py:816 +#: part/models.py:817 msgid "Is this part a template part?" msgstr "" -#: part/models.py:826 +#: part/models.py:827 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:827 +#: part/models.py:828 msgid "Variant Of" msgstr "" -#: part/models.py:833 +#: part/models.py:834 msgid "Part description" msgstr "" -#: part/models.py:839 +#: part/models.py:840 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:846 part/models.py:2966 part/models.py:3210 +#: part/models.py:847 part/models.py:3044 part/models.py:3288 #: part/templates/part/part_base.html:263 -#: templates/InvenTree/settings/settings.html:229 +#: templates/InvenTree/settings/settings.html:230 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1506 templates/js/translated/part.js:1763 +#: templates/js/translated/part.js:1784 templates/js/translated/part.js:2051 msgid "Category" msgstr "" -#: part/models.py:847 +#: part/models.py:848 msgid "Part category" msgstr "" -#: part/models.py:853 +#: part/models.py:854 msgid "Internal Part Number" msgstr "" -#: part/models.py:859 +#: part/models.py:860 msgid "Part revision or version number" msgstr "" -#: part/models.py:885 +#: part/models.py:886 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:930 part/templates/part/part_base.html:369 +#: part/models.py:931 part/templates/part/part_base.html:383 msgid "Default Supplier" msgstr "" -#: part/models.py:931 +#: part/models.py:932 msgid "Default supplier part" msgstr "" -#: part/models.py:938 +#: part/models.py:939 msgid "Default Expiry" msgstr "" -#: part/models.py:939 +#: part/models.py:940 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:945 +#: part/models.py:946 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:952 +#: part/models.py:953 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:958 +#: part/models.py:959 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:964 +#: part/models.py:965 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:970 +#: part/models.py:971 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:975 +#: part/models.py:976 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:980 +#: part/models.py:981 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:985 +#: part/models.py:986 msgid "Is this part active?" msgstr "" -#: part/models.py:990 +#: part/models.py:991 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:992 +#: part/models.py:993 msgid "Part notes" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "BOM checksum" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:997 +#: part/models.py:998 msgid "BOM checked by" msgstr "" -#: part/models.py:999 +#: part/models.py:1000 msgid "BOM checked date" msgstr "" -#: part/models.py:1003 +#: part/models.py:1004 msgid "Creation User" msgstr "" -#: part/models.py:1863 +#: part/models.py:1010 part/templates/part/part_base.html:345 +#: stock/templates/stock/item_base.html:445 +#: templates/js/translated/part.js:1901 +msgid "Last Stocktake" +msgstr "" + +#: part/models.py:1869 msgid "Sell multiple" msgstr "" -#: part/models.py:2763 +#: part/models.py:2781 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:2768 +#: part/models.py:2786 templates/js/translated/part.js:806 msgid "Updated" msgstr "" -#: part/models.py:2769 +#: part/models.py:2787 msgid "Timestamp of last pricing update" msgstr "" -#: part/models.py:2786 +#: part/models.py:2804 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:2787 +#: part/models.py:2805 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:2792 +#: part/models.py:2810 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:2793 +#: part/models.py:2811 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:2798 +#: part/models.py:2816 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:2799 +#: part/models.py:2817 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:2804 +#: part/models.py:2822 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:2805 +#: part/models.py:2823 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:2810 +#: part/models.py:2828 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:2811 +#: part/models.py:2829 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:2816 +#: part/models.py:2834 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:2817 +#: part/models.py:2835 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:2822 +#: part/models.py:2840 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:2823 +#: part/models.py:2841 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:2828 +#: part/models.py:2846 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:2829 +#: part/models.py:2847 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:2834 +#: part/models.py:2852 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:2835 +#: part/models.py:2853 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:2840 +#: part/models.py:2858 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:2841 +#: part/models.py:2859 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:2847 +#: part/models.py:2865 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:2853 +#: part/models.py:2871 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:2858 +#: part/models.py:2876 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:2859 +#: part/models.py:2877 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:2864 +#: part/models.py:2882 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:2865 +#: part/models.py:2883 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:2870 +#: part/models.py:2888 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:2871 +#: part/models.py:2889 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:2876 +#: part/models.py:2894 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:2877 +#: part/models.py:2895 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3013 +#: part/models.py:2913 +msgid "Part for stocktake" +msgstr "" + +#: part/models.py:2920 +msgid "Total available stock at time of stocktake" +msgstr "" + +#: part/models.py:2924 part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:63 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:2043 templates/js/translated/part.js:887 +#: templates/js/translated/pricing.js:537 +#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2511 +msgid "Date" +msgstr "" + +#: part/models.py:2925 +msgid "Date stocktake was performed" +msgstr "" + +#: part/models.py:2933 +msgid "Additional notes" +msgstr "" + +#: part/models.py:2941 +msgid "User who performed this stocktake" +msgstr "" + +#: part/models.py:3091 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3030 +#: part/models.py:3108 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:3050 templates/js/translated/part.js:2109 -#: templates/js/translated/stock.js:1379 +#: part/models.py:3128 templates/js/translated/part.js:2397 +#: templates/js/translated/stock.js:1378 msgid "Test Name" msgstr "" -#: part/models.py:3051 +#: part/models.py:3129 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3056 +#: part/models.py:3134 msgid "Test Description" msgstr "" -#: part/models.py:3057 +#: part/models.py:3135 msgid "Enter description for this test" msgstr "" -#: part/models.py:3062 templates/js/translated/part.js:2118 +#: part/models.py:3140 templates/js/translated/part.js:2406 #: templates/js/translated/table_filters.js:322 msgid "Required" msgstr "" -#: part/models.py:3063 +#: part/models.py:3141 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3068 templates/js/translated/part.js:2126 +#: part/models.py:3146 templates/js/translated/part.js:2414 msgid "Requires Value" msgstr "" -#: part/models.py:3069 +#: part/models.py:3147 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3074 templates/js/translated/part.js:2133 +#: part/models.py:3152 templates/js/translated/part.js:2421 msgid "Requires Attachment" msgstr "" -#: part/models.py:3075 +#: part/models.py:3153 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3116 +#: part/models.py:3194 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3124 +#: part/models.py:3202 msgid "Parameter Name" msgstr "" -#: part/models.py:3128 +#: part/models.py:3206 msgid "Parameter Units" msgstr "" -#: part/models.py:3133 +#: part/models.py:3211 msgid "Parameter description" msgstr "" -#: part/models.py:3166 +#: part/models.py:3244 msgid "Parent Part" msgstr "" -#: part/models.py:3168 part/models.py:3216 part/models.py:3217 -#: templates/InvenTree/settings/settings.html:224 +#: part/models.py:3246 part/models.py:3294 part/models.py:3295 +#: templates/InvenTree/settings/settings.html:225 msgid "Parameter Template" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Data" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Parameter Value" msgstr "" -#: part/models.py:3221 templates/InvenTree/settings/settings.html:233 +#: part/models.py:3299 templates/InvenTree/settings/settings.html:234 msgid "Default Value" msgstr "" -#: part/models.py:3222 +#: part/models.py:3300 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3259 +#: part/models.py:3337 msgid "Part ID or part name" msgstr "" -#: part/models.py:3263 +#: part/models.py:3341 msgid "Unique part ID value" msgstr "" -#: part/models.py:3271 +#: part/models.py:3349 msgid "Part IPN value" msgstr "" -#: part/models.py:3274 +#: part/models.py:3352 msgid "Level" msgstr "" -#: part/models.py:3275 +#: part/models.py:3353 msgid "BOM level" msgstr "" -#: part/models.py:3344 +#: part/models.py:3422 msgid "Select parent part" msgstr "" -#: part/models.py:3352 +#: part/models.py:3430 msgid "Sub part" msgstr "" -#: part/models.py:3353 +#: part/models.py:3431 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:3359 +#: part/models.py:3437 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:3363 part/templates/part/upload_bom.html:58 +#: part/models.py:3441 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:933 templates/js/translated/bom.js:986 #: templates/js/translated/build.js:1868 #: templates/js/translated/table_filters.js:84 @@ -5237,189 +5304,189 @@ msgstr "" msgid "Optional" msgstr "" -#: part/models.py:3364 +#: part/models.py:3442 msgid "This BOM item is optional" msgstr "" -#: part/models.py:3369 templates/js/translated/bom.js:929 +#: part/models.py:3447 templates/js/translated/bom.js:929 #: templates/js/translated/bom.js:995 templates/js/translated/build.js:1859 #: templates/js/translated/table_filters.js:88 msgid "Consumable" msgstr "" -#: part/models.py:3370 +#: part/models.py:3448 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:3374 part/templates/part/upload_bom.html:55 +#: part/models.py:3452 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:3375 +#: part/models.py:3453 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:3378 +#: part/models.py:3456 msgid "BOM item reference" msgstr "" -#: part/models.py:3381 +#: part/models.py:3459 msgid "BOM item notes" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "Checksum" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "BOM line checksum" msgstr "" -#: part/models.py:3387 part/templates/part/upload_bom.html:57 +#: part/models.py:3465 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1012 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:108 msgid "Inherited" msgstr "" -#: part/models.py:3388 +#: part/models.py:3466 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:3393 part/templates/part/upload_bom.html:56 +#: part/models.py:3471 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1004 msgid "Allow Variants" msgstr "" -#: part/models.py:3394 +#: part/models.py:3472 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:3480 stock/models.py:558 +#: part/models.py:3558 stock/models.py:558 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:3489 part/models.py:3491 +#: part/models.py:3567 part/models.py:3569 msgid "Sub part must be specified" msgstr "" -#: part/models.py:3618 +#: part/models.py:3696 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:3639 +#: part/models.py:3717 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:3652 +#: part/models.py:3730 msgid "Parent BOM item" msgstr "" -#: part/models.py:3660 +#: part/models.py:3738 msgid "Substitute part" msgstr "" -#: part/models.py:3675 +#: part/models.py:3753 msgid "Part 1" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Part 2" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Select Related Part" msgstr "" -#: part/models.py:3697 +#: part/models.py:3775 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:3701 +#: part/models.py:3779 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:155 part/serializers.py:183 stock/serializers.py:183 +#: part/serializers.py:157 part/serializers.py:185 stock/serializers.py:183 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:543 +#: part/serializers.py:584 msgid "Update" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:585 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:854 +#: part/serializers.py:895 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:862 +#: part/serializers.py:903 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:863 +#: part/serializers.py:904 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:868 +#: part/serializers.py:909 msgid "Include Inherited" msgstr "" -#: part/serializers.py:869 +#: part/serializers.py:910 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:874 +#: part/serializers.py:915 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:875 +#: part/serializers.py:916 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:921 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:881 +#: part/serializers.py:922 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:962 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:922 +#: part/serializers.py:963 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:952 +#: part/serializers.py:993 msgid "No part column specified" msgstr "" -#: part/serializers.py:995 +#: part/serializers.py:1036 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:998 +#: part/serializers.py:1039 msgid "No matching part found" msgstr "" -#: part/serializers.py:1001 +#: part/serializers.py:1042 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1010 +#: part/serializers.py:1051 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1059 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1039 +#: part/serializers.py:1080 msgid "At least one BOM item is required" msgstr "" @@ -5451,7 +5518,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:267 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:290 msgid "BOM actions" msgstr "" @@ -5508,8 +5575,8 @@ msgstr "" msgid "New Part" msgstr "" -#: part/templates/part/category.html:169 part/templates/part/detail.html:366 -#: part/templates/part/detail.html:397 +#: part/templates/part/category.html:169 part/templates/part/detail.html:389 +#: part/templates/part/detail.html:420 msgid "Options" msgstr "" @@ -5557,7 +5624,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:404 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:407 msgid "Duplicate Part" msgstr "" @@ -5594,118 +5661,128 @@ msgstr "" msgid "Refresh" msgstr "" -#: part/templates/part/detail.html:59 +#: part/templates/part/detail.html:65 +msgid "Add stocktake information" +msgstr "" + +#: part/templates/part/detail.html:66 part/templates/part/part_sidebar.html:49 +#: stock/admin.py:107 templates/js/translated/stock.js:1905 +msgid "Stocktake" +msgstr "" + +#: part/templates/part/detail.html:82 msgid "Part Test Templates" msgstr "" -#: part/templates/part/detail.html:64 +#: part/templates/part/detail.html:87 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:144 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:141 +#: part/templates/part/detail.html:164 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:156 +#: part/templates/part/detail.html:179 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:160 +#: part/templates/part/detail.html:183 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:161 +#: part/templates/part/detail.html:184 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:188 +#: part/templates/part/detail.html:211 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:225 part/templates/part/part_sidebar.html:52 +#: part/templates/part/detail.html:248 part/templates/part/part_sidebar.html:57 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:229 part/templates/part/detail.html:230 +#: part/templates/part/detail.html:252 part/templates/part/detail.html:253 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:250 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:273 part/templates/part/part_sidebar.html:17 +#: report/templates/report/inventree_bill_of_materials_report.html:100 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:255 +#: part/templates/part/detail.html:278 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:259 templates/js/translated/bom.js:309 +#: part/templates/part/detail.html:282 templates/js/translated/bom.js:309 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:261 +#: part/templates/part/detail.html:284 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:271 +#: part/templates/part/detail.html:294 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:272 templates/js/translated/part.js:276 +#: part/templates/part/detail.html:295 templates/js/translated/part.js:279 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:273 +#: part/templates/part/detail.html:296 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:278 part/templates/part/detail.html:279 +#: part/templates/part/detail.html:301 part/templates/part/detail.html:302 #: templates/js/translated/bom.js:1268 templates/js/translated/bom.js:1269 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:292 +#: part/templates/part/detail.html:315 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:310 +#: part/templates/part/detail.html:333 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:337 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:360 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:353 +#: part/templates/part/detail.html:376 msgid "Part Suppliers" msgstr "" -#: part/templates/part/detail.html:383 +#: part/templates/part/detail.html:406 msgid "Part Manufacturers" msgstr "" -#: part/templates/part/detail.html:399 +#: part/templates/part/detail.html:422 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:696 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:704 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:796 msgid "Add Test Result Template" msgstr "" #: part/templates/part/import_wizard/ajax_part_upload.html:29 #: part/templates/part/import_wizard/part_upload.html:14 -msgid "Unsuffitient privileges." +msgid "Insufficient privileges." msgstr "" #: part/templates/part/import_wizard/part_upload.html:8 @@ -5716,6 +5793,34 @@ msgstr "" msgid "Import Parts from File" msgstr "" +#: part/templates/part/import_wizard/part_upload.html:31 +msgid "Requirements for part import" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "The part import file must contain the required named columns as provided in the " +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:89 +msgid "Download Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:92 +#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 +#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 +msgid "Format" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:93 +#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 +#: templates/js/translated/order.js:999 +msgid "Select file format" +msgstr "" + #: part/templates/part/part_app_base.html:12 msgid "Part List" msgstr "" @@ -5805,12 +5910,12 @@ msgstr "" #: templates/js/translated/company.js:660 #: templates/js/translated/company.js:921 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:677 templates/js/translated/part.js:755 +#: templates/js/translated/part.js:680 templates/js/translated/part.js:1026 msgid "Inactive" msgstr "" #: part/templates/part/part_base.html:165 -#: part/templates/part/part_base.html:666 +#: part/templates/part/part_base.html:680 msgid "Show Part Details" msgstr "" @@ -5838,38 +5943,38 @@ msgid "Minimum stock level" msgstr "" #: part/templates/part/part_base.html:330 templates/js/translated/bom.js:1032 -#: templates/js/translated/part.js:798 templates/js/translated/part.js:1597 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:1875 #: templates/js/translated/pricing.js:124 #: templates/js/translated/pricing.js:762 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:345 +#: part/templates/part/part_base.html:359 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:349 +#: part/templates/part/part_base.html:363 #: stock/templates/stock/item_base.html:331 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:449 +#: part/templates/part/part_base.html:463 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:495 +#: part/templates/part/part_base.html:509 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:512 +#: part/templates/part/part_base.html:526 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:564 +#: part/templates/part/part_base.html:578 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:660 +#: part/templates/part/part_base.html:674 msgid "Hide Part Details" msgstr "" @@ -5921,15 +6026,6 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" -#: part/templates/part/part_scheduling.html:13 -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:63 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:2043 templates/js/translated/pricing.js:537 -#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2516 -msgid "Date" -msgstr "" - #: part/templates/part/part_scheduling.html:14 msgid "Scheduled Quantity" msgstr "" @@ -5942,7 +6038,7 @@ msgstr "" msgid "Scheduling" msgstr "" -#: part/templates/part/part_sidebar.html:48 +#: part/templates/part/part_sidebar.html:53 msgid "Test Templates" msgstr "" @@ -5961,7 +6057,7 @@ msgstr "" #: part/templates/part/prices.html:25 stock/admin.py:106 #: stock/templates/stock/item_base.html:440 #: templates/js/translated/company.js:1039 -#: templates/js/translated/stock.js:1940 +#: templates/js/translated/stock.js:1935 msgid "Last Updated" msgstr "" @@ -6024,8 +6120,8 @@ msgstr "" msgid "Add Sell Price Break" msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:639 -#: templates/js/translated/part.js:1366 templates/js/translated/part.js:1368 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:1644 templates/js/translated/part.js:1646 msgid "No Stock" msgstr "" @@ -6088,27 +6184,32 @@ msgstr "" msgid "{title} v{version}" msgstr "" -#: part/views.py:109 +#: part/views.py:111 msgid "Match References" msgstr "" -#: part/views.py:354 +#: part/views.py:239 +#, python-brace-format +msgid "Can't import part {name} because there is no category assigned" +msgstr "" + +#: part/views.py:378 msgid "Part QR Code" msgstr "" -#: part/views.py:372 +#: part/views.py:396 msgid "Select Part Image" msgstr "" -#: part/views.py:398 +#: part/views.py:422 msgid "Updated part image" msgstr "" -#: part/views.py:401 +#: part/views.py:425 msgid "Part image not found" msgstr "" -#: part/views.py:493 +#: part/views.py:517 msgid "Part Pricing" msgstr "" @@ -6157,28 +6258,48 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:29 -#: plugin/builtin/integration/core_notifications.py:31 +#: plugin/builtin/integration/core_notifications.py:33 msgid "InvenTree contributors" msgstr "" -#: plugin/builtin/integration/core_notifications.py:30 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:32 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notificaton methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:37 -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:80 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:38 -#: plugin/builtin/integration/core_notifications.py:57 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:81 msgid "Allow sending of emails for event notifications" msgstr "" +#: plugin/builtin/integration/core_notifications.py:45 +msgid "Enable slack notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:46 +msgid "Allow sending of slack channel messages for event notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:51 +msgid "Slack incoming webhook url" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:52 +msgid "URL that is used to send messages to a slack channel" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:162 +msgid "Open link" +msgstr "" + #: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" @@ -6410,6 +6531,10 @@ msgstr "" msgid "Asset file description" msgstr "" +#: report/templates/report/inventree_bill_of_materials_report.html:133 +msgid "Materials needed" +msgstr "" + #: report/templates/report/inventree_build_order_base.html:146 msgid "Required For" msgstr "" @@ -6428,7 +6553,7 @@ msgstr "" #: templates/js/translated/build.js:1244 templates/js/translated/build.js:1745 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:121 templates/js/translated/order.js:3611 -#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:522 +#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:521 msgid "Serial Number" msgstr "" @@ -6460,8 +6585,9 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: stock/admin.py:87 templates/js/translated/stock.js:642 -#: templates/js/translated/stock.js:812 templates/js/translated/stock.js:2765 +#: stock/admin.py:87 templates/js/translated/part.js:749 +#: templates/js/translated/stock.js:641 templates/js/translated/stock.js:811 +#: templates/js/translated/stock.js:2760 msgid "Serial" msgstr "" @@ -6516,13 +6642,9 @@ msgstr "" msgid "Purchase Order ID" msgstr "" -#: stock/admin.py:107 templates/js/translated/stock.js:1910 -msgid "Stocktake" -msgstr "" - #: stock/admin.py:108 stock/models.py:764 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/stock.js:1924 +#: templates/js/translated/stock.js:1919 msgid "Expiry Date" msgstr "" @@ -6937,7 +7059,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2912 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2907 msgid "Install Stock Item" msgstr "" @@ -6945,7 +7067,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1561 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1560 msgid "Add Test Result" msgstr "" @@ -7118,10 +7240,6 @@ msgstr "" msgid "Stale" msgstr "" -#: stock/templates/stock/item_base.html:445 -msgid "Last Stocktake" -msgstr "" - #: stock/templates/stock/item_base.html:449 msgid "No stocktake performed" msgstr "" @@ -7395,7 +7513,8 @@ msgstr "" #: templates/InvenTree/notifications/notifications.html:10 #: templates/InvenTree/notifications/sidebar.html:5 -#: templates/InvenTree/settings/sidebar.html:17 templates/notifications.html:5 +#: templates/InvenTree/settings/sidebar.html:17 +#: templates/InvenTree/settings/sidebar.html:35 templates/notifications.html:5 msgid "Notifications" msgstr "" @@ -7476,6 +7595,14 @@ msgstr "" msgid "Open in new tab" msgstr "" +#: templates/InvenTree/settings/notifications.html:9 +msgid "Global Notification Settings" +msgstr "" + +#: templates/InvenTree/settings/notifications.html:18 +msgid "Slug" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -7493,7 +7620,7 @@ msgid "Part Parameter Templates" msgstr "" #: templates/InvenTree/settings/plugin.html:10 -#: templates/InvenTree/settings/sidebar.html:55 +#: templates/InvenTree/settings/sidebar.html:57 msgid "Plugin Settings" msgstr "" @@ -7502,7 +7629,7 @@ msgid "Changing the settings below require you to immediately restart the server msgstr "" #: templates/InvenTree/settings/plugin.html:38 -#: templates/InvenTree/settings/sidebar.html:57 +#: templates/InvenTree/settings/sidebar.html:59 msgid "Plugins" msgstr "" @@ -7670,67 +7797,67 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:117 +#: templates/InvenTree/settings/settings.html:118 msgid "Edit Plugin Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:119 +#: templates/InvenTree/settings/settings.html:120 msgid "Edit Notification Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:122 +#: templates/InvenTree/settings/settings.html:123 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:124 +#: templates/InvenTree/settings/settings.html:125 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:214 +#: templates/InvenTree/settings/settings.html:215 msgid "No category parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:236 -#: templates/InvenTree/settings/settings.html:361 -msgid "Edit Template" -msgstr "" - #: templates/InvenTree/settings/settings.html:237 #: templates/InvenTree/settings/settings.html:362 +msgid "Edit Template" +msgstr "" + +#: templates/InvenTree/settings/settings.html:238 +#: templates/InvenTree/settings/settings.html:363 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:277 +#: templates/InvenTree/settings/settings.html:278 msgid "Create Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:322 +#: templates/InvenTree/settings/settings.html:323 msgid "Delete Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:334 +#: templates/InvenTree/settings/settings.html:335 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:338 +#: templates/InvenTree/settings/settings.html:339 #: templates/js/translated/news.js:29 #: templates/js/translated/notification.js:36 msgid "ID" msgstr "" -#: templates/InvenTree/settings/settings.html:380 +#: templates/InvenTree/settings/settings.html:381 msgid "Create Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:399 +#: templates/InvenTree/settings/settings.html:400 msgid "Edit Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:413 +#: templates/InvenTree/settings/settings.html:414 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/InvenTree/settings/settings.html:421 +#: templates/InvenTree/settings/settings.html:422 msgid "Delete Part Parameter Template" msgstr "" @@ -7759,12 +7886,12 @@ msgid "Search Settings" msgstr "" #: templates/InvenTree/settings/sidebar.html:19 -#: templates/InvenTree/settings/sidebar.html:37 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Label Printing" msgstr "" #: templates/InvenTree/settings/sidebar.html:21 -#: templates/InvenTree/settings/sidebar.html:39 +#: templates/InvenTree/settings/sidebar.html:41 msgid "Reporting" msgstr "" @@ -7776,7 +7903,7 @@ msgstr "" msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:43 +#: templates/InvenTree/settings/sidebar.html:45 msgid "Categories" msgstr "" @@ -7946,64 +8073,64 @@ msgstr "" msgid "Do you really want to remove the selected email address?" msgstr "" -#: templates/InvenTree/settings/user_display.html:28 +#: templates/InvenTree/settings/user_display.html:29 msgid "Theme Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:38 +#: templates/InvenTree/settings/user_display.html:39 msgid "Select theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:49 +#: templates/InvenTree/settings/user_display.html:50 msgid "Set Theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:57 +#: templates/InvenTree/settings/user_display.html:58 msgid "Language Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:66 +#: templates/InvenTree/settings/user_display.html:67 msgid "Select language" msgstr "" -#: templates/InvenTree/settings/user_display.html:82 +#: templates/InvenTree/settings/user_display.html:83 #, python-format msgid "%(lang_translated)s%% translated" msgstr "" -#: templates/InvenTree/settings/user_display.html:84 +#: templates/InvenTree/settings/user_display.html:85 msgid "No translations available" msgstr "" -#: templates/InvenTree/settings/user_display.html:91 +#: templates/InvenTree/settings/user_display.html:92 msgid "Set Language" msgstr "" -#: templates/InvenTree/settings/user_display.html:94 +#: templates/InvenTree/settings/user_display.html:95 msgid "Some languages are not complete" msgstr "" -#: templates/InvenTree/settings/user_display.html:96 +#: templates/InvenTree/settings/user_display.html:97 msgid "Show only sufficent" msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "and hidden." msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "Show them too" msgstr "" -#: templates/InvenTree/settings/user_display.html:105 +#: templates/InvenTree/settings/user_display.html:106 msgid "Help the translation efforts!" msgstr "" -#: templates/InvenTree/settings/user_display.html:106 +#: templates/InvenTree/settings/user_display.html:107 msgid "Native language translation of the web application is community contributed via crowdin. Contributions are welcomed and encouraged." msgstr "" -#: templates/InvenTree/settings/user_display.html:107 +#: templates/InvenTree/settings/user_display.html:108 msgid "InvenTree Translation Project" msgstr "" @@ -8081,7 +8208,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:646 +#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:649 msgid "Confirm" msgstr "" @@ -8115,7 +8242,7 @@ msgid "Forgot Password?" msgstr "" #: templates/account/login.html:53 -msgid "or use SSO" +msgid "Sign in using third-party SSO" msgstr "" #: templates/account/logout.html:5 templates/account/logout.html:8 @@ -8316,7 +8443,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 -#: templates/js/translated/part.js:2438 +#: templates/js/translated/part.js:2726 msgid "Minimum Quantity" msgstr "" @@ -8469,7 +8596,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1089 +#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1088 msgid "Remove stock item" msgstr "" @@ -8551,16 +8678,6 @@ msgstr "" msgid "Download BOM Template" msgstr "" -#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 -#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 -msgid "Format" -msgstr "" - -#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 -#: templates/js/translated/order.js:999 -msgid "Select file format" -msgstr "" - #: templates/js/translated/bom.js:320 msgid "Multi Level BOM" msgstr "" @@ -8691,7 +8808,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:1145 templates/js/translated/build.js:1923 -#: templates/js/translated/part.js:790 templates/js/translated/part.js:1565 +#: templates/js/translated/part.js:1061 templates/js/translated/part.js:1843 msgid "Includes variant stock" msgstr "" @@ -8776,13 +8893,13 @@ msgstr "" msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:317 templates/js/translated/stock.js:95 -#: templates/js/translated/stock.js:237 +#: templates/js/translated/build.js:317 templates/js/translated/stock.js:94 +#: templates/js/translated/stock.js:236 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:319 templates/js/translated/stock.js:97 -#: templates/js/translated/stock.js:239 +#: templates/js/translated/build.js:319 templates/js/translated/stock.js:96 +#: templates/js/translated/stock.js:238 msgid "Latest serial number" msgstr "" @@ -8990,9 +9107,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1459 -#: templates/js/translated/part.js:1996 templates/js/translated/stock.js:1725 -#: templates/js/translated/stock.js:2428 +#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1737 +#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1724 +#: templates/js/translated/stock.js:2423 msgid "Select" msgstr "" @@ -9004,7 +9121,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2695 +#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2690 msgid "No user information" msgstr "" @@ -9077,34 +9194,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:652 -#: templates/js/translated/company.js:913 templates/js/translated/part.js:661 -#: templates/js/translated/part.js:747 +#: templates/js/translated/company.js:913 templates/js/translated/part.js:664 +#: templates/js/translated/part.js:1018 msgid "Template part" msgstr "" #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:917 templates/js/translated/part.js:665 -#: templates/js/translated/part.js:751 +#: templates/js/translated/company.js:917 templates/js/translated/part.js:668 +#: templates/js/translated/part.js:1022 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:784 templates/js/translated/part.js:870 +#: templates/js/translated/company.js:784 templates/js/translated/part.js:1141 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:821 templates/js/translated/part.js:912 +#: templates/js/translated/company.js:821 templates/js/translated/part.js:1183 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:822 templates/js/translated/part.js:913 +#: templates/js/translated/company.js:822 templates/js/translated/part.js:1184 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:841 templates/js/translated/part.js:930 +#: templates/js/translated/company.js:841 templates/js/translated/part.js:1201 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:852 templates/js/translated/part.js:942 +#: templates/js/translated/company.js:852 templates/js/translated/part.js:1213 msgid "Delete Parameter" msgstr "" @@ -9184,61 +9301,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:369 templates/js/translated/forms.js:384 -#: templates/js/translated/forms.js:398 templates/js/translated/forms.js:412 +#: templates/js/translated/forms.js:372 templates/js/translated/forms.js:387 +#: templates/js/translated/forms.js:401 templates/js/translated/forms.js:415 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:371 +#: templates/js/translated/forms.js:374 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:386 +#: templates/js/translated/forms.js:389 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:400 +#: templates/js/translated/forms.js:403 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:414 +#: templates/js/translated/forms.js:417 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:672 +#: templates/js/translated/forms.js:675 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:773 +#: templates/js/translated/forms.js:776 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1266 templates/modals.html:19 +#: templates/js/translated/forms.js:1269 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1703 +#: templates/js/translated/forms.js:1706 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1919 templates/search.html:29 +#: templates/js/translated/forms.js:1922 templates/search.html:29 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2172 +#: templates/js/translated/forms.js:2175 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:2640 +#: templates/js/translated/forms.js:2643 msgid "Select Columns" msgstr "" @@ -9259,7 +9376,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1113 +#: templates/js/translated/stock.js:1112 msgid "Select Stock Items" msgstr "" @@ -9593,7 +9710,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2184 +#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2179 msgid "Stock Status" msgstr "" @@ -9617,7 +9734,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1982 templates/js/translated/part.js:983 +#: templates/js/translated/order.js:1982 templates/js/translated/part.js:1254 msgid "No purchase orders found" msgstr "" @@ -9650,8 +9767,8 @@ msgstr "" msgid "Total" msgstr "" -#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1085 -#: templates/js/translated/part.js:1137 +#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1356 +#: templates/js/translated/part.js:1408 msgid "Total Quantity" msgstr "" @@ -9669,11 +9786,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2388 templates/js/translated/order.js:3900 -#: templates/js/translated/part.js:1121 +#: templates/js/translated/part.js:1392 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1166 +#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1437 msgid "Receive line item" msgstr "" @@ -9794,7 +9911,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3623 templates/js/translated/order.js:3712 -#: templates/js/translated/stock.js:1641 +#: templates/js/translated/stock.js:1640 msgid "Shipped to customer" msgstr "" @@ -9838,334 +9955,358 @@ msgstr "" msgid "No matching lines" msgstr "" -#: templates/js/translated/part.js:52 +#: templates/js/translated/part.js:55 msgid "Part Attributes" msgstr "" -#: templates/js/translated/part.js:56 +#: templates/js/translated/part.js:59 msgid "Part Creation Options" msgstr "" -#: templates/js/translated/part.js:60 +#: templates/js/translated/part.js:63 msgid "Part Duplication Options" msgstr "" -#: templates/js/translated/part.js:64 +#: templates/js/translated/part.js:67 msgid "Supplier Options" msgstr "" -#: templates/js/translated/part.js:78 +#: templates/js/translated/part.js:81 msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:168 +#: templates/js/translated/part.js:171 msgid "Create Initial Stock" msgstr "" -#: templates/js/translated/part.js:169 +#: templates/js/translated/part.js:172 msgid "Create an initial stock item for this part" msgstr "" -#: templates/js/translated/part.js:176 +#: templates/js/translated/part.js:179 msgid "Initial Stock Quantity" msgstr "" -#: templates/js/translated/part.js:177 +#: templates/js/translated/part.js:180 msgid "Specify initial stock quantity for this part" msgstr "" -#: templates/js/translated/part.js:184 +#: templates/js/translated/part.js:187 msgid "Select destination stock location" msgstr "" -#: templates/js/translated/part.js:202 +#: templates/js/translated/part.js:205 msgid "Copy Category Parameters" msgstr "" -#: templates/js/translated/part.js:203 +#: templates/js/translated/part.js:206 msgid "Copy parameter templates from selected part category" msgstr "" -#: templates/js/translated/part.js:211 +#: templates/js/translated/part.js:214 msgid "Add Supplier Data" msgstr "" -#: templates/js/translated/part.js:212 +#: templates/js/translated/part.js:215 msgid "Create initial supplier data for this part" msgstr "" -#: templates/js/translated/part.js:268 +#: templates/js/translated/part.js:271 msgid "Copy Image" msgstr "" -#: templates/js/translated/part.js:269 +#: templates/js/translated/part.js:272 msgid "Copy image from original part" msgstr "" -#: templates/js/translated/part.js:277 +#: templates/js/translated/part.js:280 msgid "Copy bill of materials from original part" msgstr "" -#: templates/js/translated/part.js:284 +#: templates/js/translated/part.js:287 msgid "Copy Parameters" msgstr "" -#: templates/js/translated/part.js:285 +#: templates/js/translated/part.js:288 msgid "Copy parameter data from original part" msgstr "" -#: templates/js/translated/part.js:298 +#: templates/js/translated/part.js:301 msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:313 templates/js/translated/stock.js:122 +#: templates/js/translated/part.js:316 templates/js/translated/stock.js:121 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:329 +#: templates/js/translated/part.js:332 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:342 +#: templates/js/translated/part.js:345 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:347 +#: templates/js/translated/part.js:350 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:359 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:360 +#: templates/js/translated/part.js:363 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:368 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:394 +#: templates/js/translated/part.js:397 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:396 +#: templates/js/translated/part.js:399 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:407 +#: templates/js/translated/part.js:410 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:459 +#: templates/js/translated/part.js:462 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:460 +#: templates/js/translated/part.js:463 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:477 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:476 +#: templates/js/translated/part.js:479 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:477 +#: templates/js/translated/part.js:480 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:478 +#: templates/js/translated/part.js:481 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:485 +#: templates/js/translated/part.js:488 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:521 +#: templates/js/translated/part.js:524 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:523 +#: templates/js/translated/part.js:526 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:531 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:530 +#: templates/js/translated/part.js:533 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:547 +#: templates/js/translated/part.js:550 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:560 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:560 +#: templates/js/translated/part.js:563 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:585 +#: templates/js/translated/part.js:588 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1547 +#: templates/js/translated/part.js:612 templates/js/translated/part.js:1825 #: templates/js/translated/table_filters.js:488 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:622 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:653 templates/js/translated/part.js:739 +#: templates/js/translated/part.js:656 templates/js/translated/part.js:1010 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:657 templates/js/translated/part.js:743 +#: templates/js/translated/part.js:660 templates/js/translated/part.js:1014 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:669 +#: templates/js/translated/part.js:672 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:673 +#: templates/js/translated/part.js:676 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:815 +#: templates/js/translated/part.js:761 +msgid "Stock item has not been checked recently" +msgstr "" + +#: templates/js/translated/part.js:769 +msgid "Update item" +msgstr "" + +#: templates/js/translated/part.js:770 +msgid "Delete item" +msgstr "" + +#: templates/js/translated/part.js:871 +msgid "No stocktake information available" +msgstr "" + +#: templates/js/translated/part.js:910 templates/js/translated/part.js:933 +msgid "Edit Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:914 templates/js/translated/part.js:945 +msgid "Delete Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:1086 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1236 +#: templates/js/translated/part.js:1507 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1260 +#: templates/js/translated/part.js:1531 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1327 templates/js/translated/part.js:1648 +#: templates/js/translated/part.js:1598 templates/js/translated/part.js:1936 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1514 +#: templates/js/translated/part.js:1792 msgid "No category" msgstr "" -#: templates/js/translated/part.js:1545 +#: templates/js/translated/part.js:1823 msgid "No stock" msgstr "" -#: templates/js/translated/part.js:1569 +#: templates/js/translated/part.js:1847 msgid "Allocated to build orders" msgstr "" -#: templates/js/translated/part.js:1573 +#: templates/js/translated/part.js:1851 msgid "Allocated to sales orders" msgstr "" -#: templates/js/translated/part.js:1672 templates/js/translated/part.js:1915 -#: templates/js/translated/stock.js:2387 +#: templates/js/translated/part.js:1960 templates/js/translated/part.js:2203 +#: templates/js/translated/stock.js:2382 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1688 +#: templates/js/translated/part.js:1976 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1754 +#: templates/js/translated/part.js:2042 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1759 +#: templates/js/translated/part.js:2047 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1764 +#: templates/js/translated/part.js:2052 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1777 +#: templates/js/translated/part.js:2065 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1935 templates/js/translated/stock.js:2407 +#: templates/js/translated/part.js:2223 templates/js/translated/stock.js:2402 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2015 +#: templates/js/translated/part.js:2303 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2031 +#: templates/js/translated/part.js:2319 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2095 +#: templates/js/translated/part.js:2383 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2146 templates/js/translated/stock.js:1338 +#: templates/js/translated/part.js:2434 templates/js/translated/stock.js:1337 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2147 templates/js/translated/stock.js:1339 -#: templates/js/translated/stock.js:1599 +#: templates/js/translated/part.js:2435 templates/js/translated/stock.js:1338 +#: templates/js/translated/stock.js:1598 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2153 +#: templates/js/translated/part.js:2441 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2175 +#: templates/js/translated/part.js:2463 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2189 +#: templates/js/translated/part.js:2477 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2270 templates/js/translated/part.js:2271 +#: templates/js/translated/part.js:2558 templates/js/translated/part.js:2559 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2273 +#: templates/js/translated/part.js:2561 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:2279 +#: templates/js/translated/part.js:2567 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:2329 +#: templates/js/translated/part.js:2617 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2335 +#: templates/js/translated/part.js:2623 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:2431 +#: templates/js/translated/part.js:2719 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2447 +#: templates/js/translated/part.js:2735 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:2492 +#: templates/js/translated/part.js:2780 msgid "Minimum Stock Level" msgstr "" @@ -10293,388 +10434,388 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:74 +#: templates/js/translated/stock.js:73 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:104 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:114 +#: templates/js/translated/stock.js:113 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:148 +#: templates/js/translated/stock.js:147 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:163 +#: templates/js/translated/stock.js:162 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:177 +#: templates/js/translated/stock.js:176 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:184 +#: templates/js/translated/stock.js:183 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:193 +#: templates/js/translated/stock.js:192 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:197 +#: templates/js/translated/stock.js:196 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:201 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:256 +#: templates/js/translated/stock.js:255 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:298 +#: templates/js/translated/stock.js:297 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:304 +#: templates/js/translated/stock.js:303 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:368 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:389 +#: templates/js/translated/stock.js:388 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:405 +#: templates/js/translated/stock.js:404 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:410 +#: templates/js/translated/stock.js:409 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:431 +#: templates/js/translated/stock.js:430 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:481 +#: templates/js/translated/stock.js:480 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:494 +#: templates/js/translated/stock.js:493 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:519 +#: templates/js/translated/stock.js:518 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:523 templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:522 templates/js/translated/stock.js:523 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:540 +#: templates/js/translated/stock.js:539 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:560 +#: templates/js/translated/stock.js:559 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:568 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:692 +#: templates/js/translated/stock.js:691 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:693 +#: templates/js/translated/stock.js:692 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:770 +#: templates/js/translated/stock.js:769 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:771 +#: templates/js/translated/stock.js:770 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:773 +#: templates/js/translated/stock.js:772 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:774 +#: templates/js/translated/stock.js:773 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:863 +#: templates/js/translated/stock.js:862 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:864 +#: templates/js/translated/stock.js:863 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:958 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:959 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:966 +#: templates/js/translated/stock.js:965 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:967 +#: templates/js/translated/stock.js:966 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:971 +#: templates/js/translated/stock.js:970 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:972 +#: templates/js/translated/stock.js:971 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:976 +#: templates/js/translated/stock.js:975 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:977 users/models.py:220 +#: templates/js/translated/stock.js:976 users/models.py:221 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:981 +#: templates/js/translated/stock.js:980 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1114 +#: templates/js/translated/stock.js:1113 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1141 +#: templates/js/translated/stock.js:1140 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1277 +#: templates/js/translated/stock.js:1276 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1279 +#: templates/js/translated/stock.js:1278 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1284 +#: templates/js/translated/stock.js:1283 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1331 +#: templates/js/translated/stock.js:1330 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1334 +#: templates/js/translated/stock.js:1333 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1360 +#: templates/js/translated/stock.js:1359 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1417 +#: templates/js/translated/stock.js:1416 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1582 +#: templates/js/translated/stock.js:1581 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1604 +#: templates/js/translated/stock.js:1603 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1633 +#: templates/js/translated/stock.js:1632 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1637 +#: templates/js/translated/stock.js:1636 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1645 +#: templates/js/translated/stock.js:1644 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1651 +#: templates/js/translated/stock.js:1650 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1820 +#: templates/js/translated/stock.js:1815 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1825 +#: templates/js/translated/stock.js:1820 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1828 +#: templates/js/translated/stock.js:1823 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1831 +#: templates/js/translated/stock.js:1826 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1833 +#: templates/js/translated/stock.js:1828 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1835 +#: templates/js/translated/stock.js:1830 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1838 +#: templates/js/translated/stock.js:1833 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1837 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1844 +#: templates/js/translated/stock.js:1839 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1846 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1853 +#: templates/js/translated/stock.js:1848 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1855 +#: templates/js/translated/stock.js:1850 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1859 +#: templates/js/translated/stock.js:1854 #: templates/js/translated/table_filters.js:216 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1989 +#: templates/js/translated/stock.js:1984 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2026 +#: templates/js/translated/stock.js:2021 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2199 +#: templates/js/translated/stock.js:2194 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2213 +#: templates/js/translated/stock.js:2208 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2214 +#: templates/js/translated/stock.js:2209 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2446 +#: templates/js/translated/stock.js:2441 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2536 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2557 +#: templates/js/translated/stock.js:2552 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2579 +#: templates/js/translated/stock.js:2574 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2598 +#: templates/js/translated/stock.js:2593 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2617 +#: templates/js/translated/stock.js:2612 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2635 +#: templates/js/translated/stock.js:2630 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2658 +#: templates/js/translated/stock.js:2653 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2666 +#: templates/js/translated/stock.js:2661 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2737 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2793 templates/js/translated/stock.js:2829 +#: templates/js/translated/stock.js:2788 templates/js/translated/stock.js:2824 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2845 +#: templates/js/translated/stock.js:2840 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2866 +#: templates/js/translated/stock.js:2861 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2867 +#: templates/js/translated/stock.js:2862 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2869 +#: templates/js/translated/stock.js:2864 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2870 +#: templates/js/translated/stock.js:2865 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:2866 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2872 +#: templates/js/translated/stock.js:2867 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2885 +#: templates/js/translated/stock.js:2880 msgid "Select part to install" msgstr "" @@ -10699,7 +10840,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:92 -#: templates/js/translated/table_filters.js:516 +#: templates/js/translated/table_filters.js:520 msgid "Has Pricing" msgstr "" @@ -10915,6 +11056,10 @@ msgstr "" msgid "Purchasable" msgstr "" +#: templates/js/translated/table_filters.js:504 +msgid "Has stocktake entries" +msgstr "" + #: templates/js/translated/tables.js:70 msgid "Display calendar view" msgstr "" @@ -11209,34 +11354,34 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:207 +#: users/models.py:208 msgid "Permission set" msgstr "" -#: users/models.py:215 +#: users/models.py:216 msgid "Group" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "View" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "Permission to view items" msgstr "" -#: users/models.py:220 +#: users/models.py:221 msgid "Permission to add items" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Change" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Permissions to edit items" msgstr "" -#: users/models.py:224 +#: users/models.py:225 msgid "Permission to delete items" msgstr "" diff --git a/InvenTree/locale/fa/LC_MESSAGES/django.po b/InvenTree/locale/fa/LC_MESSAGES/django.po index c85a963387..636f0a537d 100644 --- a/InvenTree/locale/fa/LC_MESSAGES/django.po +++ b/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: 2022-12-30 20:46+0000\n" -"PO-Revision-Date: 2022-12-31 11:30\n" +"POT-Creation-Date: 2023-01-01 11:05+0000\n" +"PO-Revision-Date: 2023-01-01 11:26\n" "Last-Translator: \n" "Language-Team: Persian\n" "Language: fa_IR\n" @@ -34,7 +34,7 @@ msgstr "" #: company/templates/company/sidebar.html:25 order/models.py:943 #: order/templates/order/po_sidebar.html:11 #: order/templates/order/so_sidebar.html:17 part/admin.py:27 -#: part/templates/part/part_sidebar.html:57 +#: part/models.py:2932 part/templates/part/part_sidebar.html:62 #: report/templates/report/inventree_build_order_base.html:172 #: stock/admin.py:103 stock/models.py:2061 stock/models.py:2169 #: stock/serializers.py:321 stock/serializers.py:454 stock/serializers.py:535 @@ -44,8 +44,8 @@ msgstr "" #: templates/js/translated/company.js:1023 #: templates/js/translated/order.js:2435 templates/js/translated/order.js:2569 #: templates/js/translated/order.js:3067 templates/js/translated/order.js:4004 -#: templates/js/translated/order.js:4385 templates/js/translated/stock.js:1413 -#: templates/js/translated/stock.js:2020 +#: templates/js/translated/order.js:4385 templates/js/translated/part.js:882 +#: templates/js/translated/stock.js:1412 templates/js/translated/stock.js:2015 msgid "Notes" msgstr "" @@ -204,18 +204,18 @@ msgstr "" msgid "Select file to attach" msgstr "" -#: InvenTree/models.py:412 common/models.py:2366 company/models.py:129 +#: InvenTree/models.py:412 common/models.py:2373 company/models.py:129 #: company/models.py:281 company/models.py:516 order/models.py:85 -#: order/models.py:1282 part/admin.py:25 part/models.py:865 +#: order/models.py:1282 part/admin.py:25 part/models.py:866 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: stock/admin.py:102 templates/js/translated/company.js:692 #: templates/js/translated/company.js:1012 -#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1615 +#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1886 msgid "Link" msgstr "" -#: InvenTree/models.py:413 build/models.py:290 part/models.py:866 +#: InvenTree/models.py:413 build/models.py:290 part/models.py:867 #: stock/models.py:716 msgid "Link to external URL" msgstr "" @@ -229,12 +229,13 @@ msgstr "" msgid "File comment" msgstr "" -#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1810 -#: common/models.py:1811 common/models.py:2034 common/models.py:2035 -#: common/models.py:2296 common/models.py:2297 part/models.py:2948 -#: part/models.py:2968 plugin/models.py:264 plugin/models.py:265 +#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1817 +#: common/models.py:1818 common/models.py:2041 common/models.py:2042 +#: common/models.py:2303 common/models.py:2304 part/models.py:2940 +#: part/models.py:3026 part/models.py:3046 plugin/models.py:264 +#: plugin/models.py:265 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2689 +#: templates/js/translated/stock.js:2684 msgid "User" msgstr "" @@ -271,19 +272,20 @@ msgstr "" msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2020 -#: company/models.py:363 label/models.py:101 part/models.py:809 -#: part/models.py:3123 plugin/models.py:94 report/models.py:152 +#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2027 +#: company/models.py:363 label/models.py:101 part/models.py:810 +#: part/models.py:3201 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 +#: templates/InvenTree/settings/notifications.html:17 #: templates/InvenTree/settings/plugin.html:60 #: templates/InvenTree/settings/plugin.html:104 #: templates/InvenTree/settings/plugin_settings.html:23 -#: templates/InvenTree/settings/settings.html:344 +#: templates/InvenTree/settings/settings.html:345 #: templates/js/translated/company.js:581 #: templates/js/translated/company.js:794 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:711 templates/js/translated/part.js:880 -#: templates/js/translated/part.js:2010 templates/js/translated/stock.js:2434 +#: templates/js/translated/part.js:982 templates/js/translated/part.js:1151 +#: templates/js/translated/part.js:2291 templates/js/translated/stock.js:2429 msgid "Name" msgstr "" @@ -292,24 +294,25 @@ msgstr "" #: company/models.py:522 company/templates/company/company_base.html:72 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:108 label/models.py:108 -#: order/models.py:83 part/admin.py:141 part/admin.py:222 part/models.py:832 -#: part/models.py:3132 part/templates/part/category.html:75 +#: order/models.py:83 part/admin.py:174 part/admin.py:255 part/models.py:833 +#: part/models.py:3210 part/templates/part/category.html:75 #: part/templates/part/part_base.html:172 #: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/admin.py:25 stock/templates/stock/location.html:117 +#: templates/InvenTree/settings/notifications.html:19 #: templates/InvenTree/settings/plugin_settings.html:28 -#: templates/InvenTree/settings/settings.html:355 +#: templates/InvenTree/settings/settings.html:356 #: templates/js/translated/bom.js:592 templates/js/translated/bom.js:895 #: templates/js/translated/build.js:2596 templates/js/translated/company.js:445 #: templates/js/translated/company.js:703 #: templates/js/translated/company.js:987 templates/js/translated/order.js:2030 #: templates/js/translated/order.js:2267 templates/js/translated/order.js:2845 -#: templates/js/translated/part.js:773 templates/js/translated/part.js:1223 -#: templates/js/translated/part.js:1497 templates/js/translated/part.js:2046 -#: templates/js/translated/part.js:2121 templates/js/translated/stock.js:1787 -#: templates/js/translated/stock.js:2466 templates/js/translated/stock.js:2526 +#: templates/js/translated/part.js:1044 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1768 templates/js/translated/part.js:2327 +#: templates/js/translated/part.js:2402 templates/js/translated/stock.js:1782 +#: templates/js/translated/stock.js:2461 templates/js/translated/stock.js:2521 msgid "Description" msgstr "" @@ -322,7 +325,7 @@ msgid "parent" msgstr "" #: InvenTree/models.py:580 InvenTree/models.py:581 -#: templates/js/translated/part.js:2055 templates/js/translated/stock.js:2475 +#: templates/js/translated/part.js:2336 templates/js/translated/stock.js:2470 msgid "Path" msgstr "" @@ -354,7 +357,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:58 part/models.py:3468 +#: InvenTree/serializers.py:58 part/models.py:3546 msgid "Must be a valid number" msgstr "" @@ -421,107 +424,107 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:639 +#: InvenTree/settings.py:642 msgid "Czech" msgstr "" -#: InvenTree/settings.py:640 +#: InvenTree/settings.py:643 msgid "Danish" msgstr "" -#: InvenTree/settings.py:641 +#: InvenTree/settings.py:644 msgid "German" msgstr "" -#: InvenTree/settings.py:642 +#: InvenTree/settings.py:645 msgid "Greek" msgstr "" -#: InvenTree/settings.py:643 +#: InvenTree/settings.py:646 msgid "English" msgstr "" -#: InvenTree/settings.py:644 +#: InvenTree/settings.py:647 msgid "Spanish" msgstr "" -#: InvenTree/settings.py:645 +#: InvenTree/settings.py:648 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:646 +#: InvenTree/settings.py:649 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:647 +#: InvenTree/settings.py:650 msgid "French" msgstr "" -#: InvenTree/settings.py:648 +#: InvenTree/settings.py:651 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:649 +#: InvenTree/settings.py:652 msgid "Hungarian" msgstr "" -#: InvenTree/settings.py:650 +#: InvenTree/settings.py:653 msgid "Italian" msgstr "" -#: InvenTree/settings.py:651 +#: InvenTree/settings.py:654 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:652 +#: InvenTree/settings.py:655 msgid "Korean" msgstr "" -#: InvenTree/settings.py:653 +#: InvenTree/settings.py:656 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:654 +#: InvenTree/settings.py:657 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:655 +#: InvenTree/settings.py:658 msgid "Polish" msgstr "" -#: InvenTree/settings.py:656 +#: InvenTree/settings.py:659 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:657 +#: InvenTree/settings.py:660 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:658 +#: InvenTree/settings.py:661 msgid "Russian" msgstr "" -#: InvenTree/settings.py:659 +#: InvenTree/settings.py:662 msgid "Slovenian" msgstr "" -#: InvenTree/settings.py:660 +#: InvenTree/settings.py:663 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:661 +#: InvenTree/settings.py:664 msgid "Thai" msgstr "" -#: InvenTree/settings.py:662 +#: InvenTree/settings.py:665 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:663 +#: InvenTree/settings.py:666 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:664 +#: InvenTree/settings.py:667 msgid "Chinese" msgstr "" @@ -652,7 +655,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2124 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2119 msgid "Merged stock items" msgstr "" @@ -756,7 +759,7 @@ msgstr "" #: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:141 -#: templates/InvenTree/settings/sidebar.html:47 +#: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:254 users/models.py:41 msgid "Build Orders" msgstr "" @@ -766,8 +769,9 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:155 order/models.py:241 order/models.py:651 -#: order/models.py:941 part/admin.py:224 part/models.py:3378 +#: order/models.py:941 part/admin.py:257 part/models.py:3456 #: part/templates/part/upload_bom.html:54 +#: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 #: templates/js/translated/bom.js:729 templates/js/translated/bom.js:905 @@ -793,13 +797,15 @@ msgstr "" #: build/models.py:180 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:684 #: order/models.py:1038 order/models.py:1149 order/models.py:1150 -#: part/models.py:381 part/models.py:2781 part/models.py:2894 -#: part/models.py:2909 part/models.py:2928 part/models.py:2946 -#: part/models.py:3045 part/models.py:3166 part/models.py:3258 -#: part/models.py:3343 part/models.py:3659 part/serializers.py:853 -#: part/templates/part/part_app_base.html:8 +#: part/models.py:382 part/models.py:2799 part/models.py:2912 +#: part/models.py:2972 part/models.py:2987 part/models.py:3006 +#: part/models.py:3024 part/models.py:3123 part/models.py:3244 +#: part/models.py:3336 part/models.py:3421 part/models.py:3737 +#: part/serializers.py:894 part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 +#: report/templates/report/inventree_bill_of_materials_report.html:110 +#: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_base.html:109 #: report/templates/report/inventree_po_report.html:89 #: report/templates/report/inventree_so_report.html:90 stock/serializers.py:90 @@ -819,12 +825,12 @@ msgstr "" #: templates/js/translated/order.js:1172 templates/js/translated/order.js:1676 #: templates/js/translated/order.js:2252 templates/js/translated/order.js:3199 #: templates/js/translated/order.js:3595 templates/js/translated/order.js:3825 -#: templates/js/translated/part.js:1208 templates/js/translated/part.js:1280 -#: templates/js/translated/part.js:1474 templates/js/translated/pricing.js:102 -#: templates/js/translated/stock.js:618 templates/js/translated/stock.js:783 -#: templates/js/translated/stock.js:993 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2552 templates/js/translated/stock.js:2747 -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/part.js:1479 templates/js/translated/part.js:1551 +#: templates/js/translated/part.js:1745 templates/js/translated/pricing.js:102 +#: templates/js/translated/stock.js:617 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:992 templates/js/translated/stock.js:1738 +#: templates/js/translated/stock.js:2547 templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2879 msgid "Part" msgstr "" @@ -890,7 +896,7 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:252 order/models.py:87 part/models.py:1001 +#: build/models.py:252 order/models.py:87 part/models.py:1002 #: part/templates/part/part_base.html:318 templates/js/translated/order.js:2858 msgid "Creation Date" msgstr "" @@ -923,7 +929,7 @@ msgstr "" #: build/models.py:283 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:101 #: order/templates/order/order_base.html:185 -#: order/templates/order/sales_order_base.html:183 part/models.py:1005 +#: order/templates/order/sales_order_base.html:183 part/models.py:1006 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2658 templates/js/translated/order.js:2064 msgid "Responsible" @@ -936,7 +942,7 @@ msgstr "" #: build/models.py:289 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:188 -#: part/templates/part/part_base.html:376 stock/models.py:714 +#: part/templates/part/part_base.html:390 stock/models.py:714 #: stock/templates/stock/item_base.html:203 msgid "External Link" msgstr "" @@ -1011,8 +1017,8 @@ msgstr "" #: templates/js/translated/order.js:107 templates/js/translated/order.js:3200 #: templates/js/translated/order.js:3502 templates/js/translated/order.js:3507 #: templates/js/translated/order.js:3602 templates/js/translated/order.js:3694 -#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 -#: templates/js/translated/stock.js:2625 +#: templates/js/translated/part.js:803 templates/js/translated/stock.js:618 +#: templates/js/translated/stock.js:783 templates/js/translated/stock.js:2620 msgid "Stock Item" msgstr "" @@ -1022,12 +1028,13 @@ msgstr "" #: build/models.py:1364 build/serializers.py:192 #: build/templates/build/build_base.html:85 -#: build/templates/build/detail.html:34 common/models.py:1842 +#: build/templates/build/detail.html:34 common/models.py:1849 #: order/models.py:934 order/models.py:1460 order/serializers.py:1206 -#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:223 -#: part/forms.py:40 part/models.py:3359 +#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:256 +#: part/forms.py:40 part/models.py:2919 part/models.py:3437 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 +#: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_base.html:113 #: report/templates/report/inventree_po_report.html:90 #: report/templates/report/inventree_so_report.html:91 @@ -1049,13 +1056,14 @@ msgstr "" #: templates/js/translated/order.js:3201 templates/js/translated/order.js:3521 #: templates/js/translated/order.js:3608 templates/js/translated/order.js:3700 #: templates/js/translated/order.js:3847 templates/js/translated/order.js:4338 -#: templates/js/translated/part.js:1078 templates/js/translated/part.js:2568 +#: templates/js/translated/part.js:805 templates/js/translated/part.js:876 +#: templates/js/translated/part.js:1349 templates/js/translated/part.js:2849 #: templates/js/translated/pricing.js:114 #: templates/js/translated/pricing.js:207 #: templates/js/translated/pricing.js:255 -#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:490 -#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:814 -#: templates/js/translated/stock.js:2674 templates/js/translated/stock.js:2759 +#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:489 +#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:813 +#: templates/js/translated/stock.js:2669 templates/js/translated/stock.js:2754 msgid "Quantity" msgstr "" @@ -1097,8 +1105,8 @@ msgid "Enter quantity for build output" msgstr "" #: build/serializers.py:207 build/serializers.py:683 order/models.py:327 -#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:645 -#: part/serializers.py:1016 stock/models.py:574 stock/models.py:1312 +#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:686 +#: part/serializers.py:1057 stock/models.py:574 stock/models.py:1312 #: stock/serializers.py:294 msgid "Quantity must be greater than zero" msgstr "" @@ -1113,7 +1121,7 @@ msgstr "" #: build/serializers.py:231 order/serializers.py:463 order/serializers.py:1210 #: stock/serializers.py:303 templates/js/translated/order.js:1545 -#: templates/js/translated/stock.js:303 templates/js/translated/stock.js:491 +#: templates/js/translated/stock.js:302 templates/js/translated/stock.js:490 msgid "Serial Numbers" msgstr "" @@ -1146,9 +1154,10 @@ msgstr "" #: templates/js/translated/build.js:1759 templates/js/translated/order.js:1572 #: templates/js/translated/order.js:3514 templates/js/translated/order.js:3619 #: templates/js/translated/order.js:3627 templates/js/translated/order.js:3708 -#: templates/js/translated/part.js:183 templates/js/translated/stock.js:620 -#: templates/js/translated/stock.js:785 templates/js/translated/stock.js:995 -#: templates/js/translated/stock.js:1895 templates/js/translated/stock.js:2566 +#: templates/js/translated/part.js:186 templates/js/translated/part.js:804 +#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 +#: templates/js/translated/stock.js:994 templates/js/translated/stock.js:1890 +#: templates/js/translated/stock.js:2561 msgid "Location" msgstr "" @@ -1162,8 +1171,8 @@ msgstr "" #: stock/templates/stock/item_base.html:421 #: templates/js/translated/barcode.js:237 templates/js/translated/build.js:2630 #: templates/js/translated/order.js:1681 templates/js/translated/order.js:2034 -#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1870 -#: templates/js/translated/stock.js:2643 templates/js/translated/stock.js:2775 +#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:2638 templates/js/translated/stock.js:2770 msgid "Status" msgstr "" @@ -1239,8 +1248,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:595 build/serializers.py:640 part/models.py:3495 -#: part/models.py:3651 +#: build/serializers.py:595 build/serializers.py:640 part/models.py:3573 +#: part/models.py:3729 msgid "BOM Item" msgstr "" @@ -1406,7 +1415,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2670 templates/js/translated/order.js:2051 #: templates/js/translated/order.js:2382 templates/js/translated/order.js:2866 -#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1093 +#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1364 msgid "Target Date" msgstr "" @@ -1484,8 +1493,8 @@ msgstr "" #: stock/templates/stock/item_base.html:168 #: templates/js/translated/build.js:1250 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:1884 -#: templates/js/translated/stock.js:2782 +#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:1879 +#: templates/js/translated/stock.js:2777 #: templates/js/translated/table_filters.js:179 #: templates/js/translated/table_filters.js:270 msgid "Batch" @@ -1617,8 +1626,8 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:86 #: order/templates/order/sales_order_detail.html:140 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:210 -#: part/templates/part/part_sidebar.html:55 stock/templates/stock/item.html:117 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:233 +#: part/templates/part/part_sidebar.html:60 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" msgstr "" @@ -1635,7 +1644,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:316 +#: build/templates/build/index.html:18 part/templates/part/detail.html:339 msgid "New Build Order" msgstr "" @@ -1928,9 +1937,9 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1014 part/admin.py:41 part/models.py:3168 +#: common/models.py:1014 part/admin.py:41 part/models.py:3246 #: report/models.py:158 templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:504 +#: templates/js/translated/table_filters.js:508 msgid "Template" msgstr "" @@ -1938,7 +1947,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:1021 part/admin.py:37 part/admin.py:229 part/models.py:957 +#: common/models.py:1021 part/admin.py:37 part/admin.py:262 part/models.py:958 #: templates/js/translated/bom.js:1595 #: templates/js/translated/table_filters.js:196 #: templates/js/translated/table_filters.js:467 @@ -1949,7 +1958,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1028 part/admin.py:38 part/models.py:963 +#: common/models.py:1028 part/admin.py:38 part/models.py:964 #: templates/js/translated/table_filters.js:475 msgid "Component" msgstr "" @@ -1958,7 +1967,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1035 part/admin.py:39 part/models.py:974 +#: common/models.py:1035 part/admin.py:39 part/models.py:975 msgid "Purchaseable" msgstr "" @@ -1966,7 +1975,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1042 part/admin.py:40 part/models.py:979 +#: common/models.py:1042 part/admin.py:40 part/models.py:980 #: templates/js/translated/table_filters.js:496 msgid "Salable" msgstr "" @@ -1975,10 +1984,10 @@ msgstr "" msgid "Parts are salable by default" msgstr "" -#: common/models.py:1049 part/admin.py:42 part/models.py:969 +#: common/models.py:1049 part/admin.py:42 part/models.py:970 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:120 -#: templates/js/translated/table_filters.js:508 +#: templates/js/translated/table_filters.js:512 msgid "Trackable" msgstr "" @@ -1986,10 +1995,10 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1056 part/admin.py:43 part/models.py:989 +#: common/models.py:1056 part/admin.py:43 part/models.py:990 #: part/templates/part/part_base.html:156 #: templates/js/translated/table_filters.js:42 -#: templates/js/translated/table_filters.js:512 +#: templates/js/translated/table_filters.js:516 msgid "Virtual" msgstr "" @@ -2417,7 +2426,7 @@ msgstr "" msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1461 common/models.py:1803 +#: common/models.py:1461 common/models.py:1810 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -2749,41 +2758,50 @@ msgstr "" msgid "Display part scheduling information" msgstr "" -#: common/models.py:1778 -msgid "Table String Length" +#: common/models.py:1778 part/templates/part/detail.html:61 +#: templates/js/translated/part.js:822 +msgid "Part Stocktake" msgstr "" #: common/models.py:1779 +msgid "Display part stocktake information" +msgstr "" + +#: common/models.py:1785 +msgid "Table String Length" +msgstr "" + +#: common/models.py:1786 msgid "Maximimum length limit for strings displayed in table views" msgstr "" -#: common/models.py:1843 +#: common/models.py:1850 msgid "Price break quantity" msgstr "" -#: common/models.py:1850 company/serializers.py:393 order/models.py:975 -#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1145 +#: common/models.py:1857 company/serializers.py:393 order/models.py:975 +#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1416 #: templates/js/translated/pricing.js:354 msgid "Price" msgstr "" -#: common/models.py:1851 +#: common/models.py:1858 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2011 common/models.py:2189 +#: common/models.py:2018 common/models.py:2196 msgid "Endpoint" msgstr "" -#: common/models.py:2012 +#: common/models.py:2019 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2021 +#: common/models.py:2028 msgid "Name for this webhook" msgstr "" -#: common/models.py:2026 part/admin.py:36 part/models.py:984 +#: common/models.py:2033 part/admin.py:36 part/models.py:985 #: plugin/models.py:100 templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:116 #: templates/js/translated/table_filters.js:336 @@ -2791,131 +2809,133 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:2027 +#: common/models.py:2034 msgid "Is this webhook active" msgstr "" -#: common/models.py:2041 +#: common/models.py:2048 msgid "Token" msgstr "" -#: common/models.py:2042 +#: common/models.py:2049 msgid "Token for access" msgstr "" -#: common/models.py:2049 +#: common/models.py:2056 msgid "Secret" msgstr "" -#: common/models.py:2050 +#: common/models.py:2057 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2156 +#: common/models.py:2163 msgid "Message ID" msgstr "" -#: common/models.py:2157 +#: common/models.py:2164 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2165 +#: common/models.py:2172 msgid "Host" msgstr "" -#: common/models.py:2166 +#: common/models.py:2173 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2173 +#: common/models.py:2180 msgid "Header" msgstr "" -#: common/models.py:2174 +#: common/models.py:2181 msgid "Header of this message" msgstr "" -#: common/models.py:2180 +#: common/models.py:2187 msgid "Body" msgstr "" -#: common/models.py:2181 +#: common/models.py:2188 msgid "Body of this message" msgstr "" -#: common/models.py:2190 +#: common/models.py:2197 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2195 +#: common/models.py:2202 msgid "Worked on" msgstr "" -#: common/models.py:2196 +#: common/models.py:2203 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2355 +#: common/models.py:2362 msgid "Id" msgstr "" -#: common/models.py:2361 templates/js/translated/news.js:35 +#: common/models.py:2368 templates/js/translated/news.js:35 msgid "Title" msgstr "" -#: common/models.py:2371 templates/js/translated/news.js:51 +#: common/models.py:2378 templates/js/translated/news.js:51 msgid "Published" msgstr "" -#: common/models.py:2376 templates/InvenTree/settings/plugin.html:62 +#: common/models.py:2383 templates/InvenTree/settings/plugin.html:62 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/news.js:47 msgid "Author" msgstr "" -#: common/models.py:2381 templates/js/translated/news.js:43 +#: common/models.py:2388 templates/js/translated/news.js:43 msgid "Summary" msgstr "" -#: common/models.py:2386 +#: common/models.py:2393 msgid "Read" msgstr "" -#: common/models.py:2387 +#: common/models.py:2394 msgid "Was this news item read?" msgstr "" -#: common/notifications.py:293 +#: common/notifications.py:294 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:295 +#: common/notifications.py:296 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:301 +#: common/notifications.py:302 msgid "Items Received" msgstr "" -#: common/notifications.py:303 +#: common/notifications.py:304 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:415 +#: common/notifications.py:416 msgid "Error raised by plugin" msgstr "" #: common/views.py:85 order/templates/order/order_wizard/po_upload.html:51 #: order/templates/order/purchase_order_detail.html:25 order/views.py:102 -#: part/views.py:107 templates/patterns/wizard/upload.html:37 +#: part/templates/part/import_wizard/part_upload.html:58 part/views.py:109 +#: templates/patterns/wizard/upload.html:37 msgid "Upload File" msgstr "" #: common/views.py:86 order/templates/order/order_wizard/match_fields.html:52 #: order/views.py:103 #: part/templates/part/import_wizard/ajax_match_fields.html:45 -#: part/views.py:108 templates/patterns/wizard/match_fields.html:51 +#: part/templates/part/import_wizard/match_fields.html:52 part/views.py:110 +#: templates/patterns/wizard/match_fields.html:51 msgid "Match Fields" msgstr "" @@ -2934,7 +2954,9 @@ msgstr "" #: common/views.py:509 order/templates/order/order_wizard/match_fields.html:27 #: order/templates/order/order_wizard/match_parts.html:19 #: order/templates/order/order_wizard/po_upload.html:49 +#: part/templates/part/import_wizard/match_fields.html:27 #: part/templates/part/import_wizard/match_references.html:19 +#: part/templates/part/import_wizard/part_upload.html:56 #: templates/patterns/wizard/match_fields.html:26 #: templates/patterns/wizard/upload.html:35 msgid "Previous Step" @@ -2995,7 +3017,7 @@ msgstr "" msgid "Link to external company information" msgstr "" -#: company/models.py:140 part/models.py:878 +#: company/models.py:140 part/models.py:879 msgid "Image" msgstr "" @@ -3028,8 +3050,8 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:153 company/serializers.py:399 -#: company/templates/company/company_base.html:107 part/models.py:2762 -#: part/serializers.py:154 part/serializers.py:182 stock/serializers.py:182 +#: company/templates/company/company_base.html:107 part/models.py:2780 +#: part/serializers.py:156 part/serializers.py:184 stock/serializers.py:182 #: templates/InvenTree/settings/pricing.html:64 msgid "Currency" msgstr "" @@ -3055,12 +3077,12 @@ msgstr "" #: templates/js/translated/company.js:433 #: templates/js/translated/company.js:534 #: templates/js/translated/company.js:669 -#: templates/js/translated/company.js:957 templates/js/translated/part.js:238 +#: templates/js/translated/company.js:957 templates/js/translated/part.js:241 #: templates/js/translated/table_filters.js:439 msgid "Manufacturer" msgstr "" -#: company/models.py:269 templates/js/translated/part.js:239 +#: company/models.py:269 templates/js/translated/part.js:242 msgid "Select manufacturer" msgstr "" @@ -3070,11 +3092,11 @@ msgstr "" #: templates/js/translated/company.js:533 #: templates/js/translated/company.js:685 #: templates/js/translated/company.js:976 templates/js/translated/order.js:2286 -#: templates/js/translated/part.js:249 templates/js/translated/part.js:1067 +#: templates/js/translated/part.js:252 templates/js/translated/part.js:1338 msgid "MPN" msgstr "" -#: company/models.py:276 templates/js/translated/part.js:250 +#: company/models.py:276 templates/js/translated/part.js:253 msgid "Manufacturer Part Number" msgstr "" @@ -3100,8 +3122,8 @@ msgstr "" #: company/models.py:370 #: report/templates/report/inventree_test_report_base.html:95 #: stock/models.py:2156 templates/js/translated/company.js:582 -#: templates/js/translated/company.js:800 templates/js/translated/part.js:889 -#: templates/js/translated/stock.js:1399 +#: templates/js/translated/company.js:800 templates/js/translated/part.js:1160 +#: templates/js/translated/stock.js:1398 msgid "Value" msgstr "" @@ -3109,10 +3131,10 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:377 part/admin.py:26 part/models.py:951 -#: part/models.py:3128 part/templates/part/part_base.html:286 -#: templates/InvenTree/settings/settings.html:349 -#: templates/js/translated/company.js:806 templates/js/translated/part.js:895 +#: company/models.py:377 part/admin.py:26 part/models.py:952 +#: part/models.py:3206 part/templates/part/part_base.html:286 +#: templates/InvenTree/settings/settings.html:350 +#: templates/js/translated/company.js:806 templates/js/translated/part.js:1166 msgid "Units" msgstr "" @@ -3132,24 +3154,24 @@ msgstr "" #: templates/js/translated/company.js:304 #: templates/js/translated/company.js:437 #: templates/js/translated/company.js:930 templates/js/translated/order.js:2017 -#: templates/js/translated/part.js:219 templates/js/translated/part.js:1035 +#: templates/js/translated/part.js:222 templates/js/translated/part.js:1306 #: templates/js/translated/pricing.js:231 #: templates/js/translated/table_filters.js:443 msgid "Supplier" msgstr "" -#: company/models.py:498 templates/js/translated/part.js:220 +#: company/models.py:498 templates/js/translated/part.js:223 msgid "Select supplier" msgstr "" #: company/models.py:503 company/templates/company/supplier_part.html:146 #: part/bom.py:253 part/bom.py:281 templates/js/translated/company.js:303 -#: templates/js/translated/order.js:2273 templates/js/translated/part.js:230 -#: templates/js/translated/part.js:1053 templates/js/translated/pricing.js:243 +#: templates/js/translated/order.js:2273 templates/js/translated/part.js:233 +#: templates/js/translated/part.js:1324 templates/js/translated/pricing.js:243 msgid "SKU" msgstr "" -#: company/models.py:504 templates/js/translated/part.js:231 +#: company/models.py:504 templates/js/translated/part.js:234 msgid "Supplier stock keeping unit" msgstr "" @@ -3166,24 +3188,25 @@ msgid "Supplier part description" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:181 -#: part/admin.py:225 part/models.py:3381 part/templates/part/upload_bom.html:59 +#: part/admin.py:258 part/models.py:3459 part/templates/part/upload_bom.html:59 +#: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:397 msgid "Note" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "base cost" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:534 company/templates/company/supplier_part.html:167 #: stock/admin.py:101 stock/models.py:682 #: stock/templates/stock/item_base.html:243 -#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2016 +#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2011 msgid "Packaging" msgstr "" @@ -3196,7 +3219,7 @@ msgstr "" #: templates/js/translated/company.js:997 templates/js/translated/order.js:826 #: templates/js/translated/order.js:1253 templates/js/translated/order.js:1508 #: templates/js/translated/order.js:2317 templates/js/translated/order.js:2334 -#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1137 +#: templates/js/translated/part.js:1356 templates/js/translated/part.js:1408 msgid "Pack Quantity" msgstr "" @@ -3204,7 +3227,7 @@ msgstr "" msgid "Unit quantity supplied in a single pack" msgstr "" -#: company/models.py:544 part/models.py:1863 +#: company/models.py:544 part/models.py:1869 msgid "multiple" msgstr "" @@ -3216,8 +3239,8 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:1118 templates/js/translated/build.js:1883 -#: templates/js/translated/build.js:2770 templates/js/translated/part.js:623 -#: templates/js/translated/part.js:626 +#: templates/js/translated/build.js:2770 templates/js/translated/part.js:626 +#: templates/js/translated/part.js:629 #: templates/js/translated/table_filters.js:206 msgid "Available" msgstr "" @@ -3300,7 +3323,7 @@ msgstr "" #: stock/templates/stock/item_base.html:399 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:429 templates/js/translated/order.js:2827 -#: templates/js/translated/stock.js:2607 +#: templates/js/translated/stock.js:2602 #: templates/js/translated/table_filters.js:447 msgid "Customer" msgstr "" @@ -3314,7 +3337,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:206 -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:525 msgid "Remove Image" msgstr "" @@ -3323,19 +3346,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:209 -#: part/templates/part/part_base.html:514 +#: part/templates/part/part_base.html:528 #: templates/InvenTree/settings/user.html:87 #: templates/InvenTree/settings/user.html:149 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:238 -#: part/templates/part/part_base.html:543 +#: part/templates/part/part_base.html:557 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:253 -#: part/templates/part/part_base.html:598 +#: part/templates/part/part_base.html:612 msgid "Download Image" msgstr "" @@ -3351,7 +3374,7 @@ msgstr "" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:357 +#: part/templates/part/detail.html:380 msgid "New Supplier Part" msgstr "" @@ -3380,7 +3403,7 @@ msgstr "" msgid "Create new manufacturer part" msgstr "" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:387 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:410 msgid "New Manufacturer Part" msgstr "" @@ -3394,9 +3417,9 @@ msgstr "" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:35 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:35 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:200 -#: templates/InvenTree/settings/sidebar.html:49 +#: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:293 templates/navbar.html:50 #: users/models.py:42 msgid "Purchase Orders" @@ -3417,9 +3440,9 @@ msgstr "" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:39 +#: part/templates/part/detail.html:130 part/templates/part/part_sidebar.html:39 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:220 -#: templates/InvenTree/settings/sidebar.html:51 +#: templates/InvenTree/settings/sidebar.html:53 #: templates/js/translated/search.js:317 templates/navbar.html:61 #: users/models.py:43 msgid "Sales Orders" @@ -3451,7 +3474,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:221 -#: part/templates/part/detail.html:87 part/templates/part/part_base.html:85 +#: part/templates/part/detail.html:110 part/templates/part/part_base.html:85 msgid "Order part" msgstr "" @@ -3482,28 +3505,28 @@ msgid "Suppliers" msgstr "" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:368 +#: part/templates/part/detail.html:391 msgid "Delete supplier parts" msgstr "" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:369 part/templates/part/detail.html:399 -#: templates/js/translated/forms.js:455 templates/js/translated/helpers.js:38 -#: templates/js/translated/part.js:351 templates/js/translated/stock.js:188 -#: users/models.py:224 +#: part/templates/part/detail.html:392 part/templates/part/detail.html:422 +#: templates/js/translated/forms.js:458 templates/js/translated/helpers.js:38 +#: templates/js/translated/part.js:354 templates/js/translated/stock.js:187 +#: users/models.py:225 msgid "Delete" msgstr "" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:184 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:207 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:189 +#: part/templates/part/detail.html:212 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:62 msgid "New Parameter" @@ -3514,7 +3537,7 @@ msgid "Delete parameters" msgstr "" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:825 +#: part/templates/part/detail.html:865 msgid "Add Parameter" msgstr "" @@ -3538,7 +3561,7 @@ msgstr "" #: company/templates/company/supplier_part.html:24 stock/models.py:665 #: stock/templates/stock/item_base.html:236 #: templates/js/translated/company.js:946 templates/js/translated/order.js:1173 -#: templates/js/translated/stock.js:1974 +#: templates/js/translated/stock.js:1969 msgid "Supplier Part" msgstr "" @@ -3578,7 +3601,7 @@ msgstr "" #: company/templates/company/supplier_part.html:56 #: company/templates/company/supplier_part.html:57 #: company/templates/company/supplier_part.html:222 -#: part/templates/part/detail.html:88 +#: part/templates/part/detail.html:111 msgid "Order Part" msgstr "" @@ -3630,7 +3653,7 @@ msgstr "" #: company/templates/company/supplier_part.html:204 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:198 -#: templates/js/translated/stock.js:467 +#: templates/js/translated/stock.js:466 msgid "New Stock Item" msgstr "" @@ -3662,10 +3685,10 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 -#: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/part.js:777 templates/js/translated/part.js:1378 -#: templates/js/translated/part.js:1534 templates/js/translated/stock.js:994 -#: templates/js/translated/stock.js:1799 templates/navbar.html:31 +#: templates/InvenTree/settings/sidebar.html:47 +#: templates/js/translated/part.js:1048 templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1805 templates/js/translated/stock.js:993 +#: templates/js/translated/stock.js:1794 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3680,7 +3703,7 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:29 #: part/templates/part/part_sidebar.html:30 -#: templates/InvenTree/settings/sidebar.html:35 +#: templates/InvenTree/settings/sidebar.html:37 msgid "Pricing" msgstr "" @@ -3692,7 +3715,7 @@ msgstr "" #: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:155 templates/js/translated/search.js:225 -#: templates/js/translated/stock.js:2484 users/models.py:40 +#: templates/js/translated/stock.js:2479 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3801,9 +3824,9 @@ msgstr "" #: stock/templates/stock/item_base.html:182 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:619 templates/js/translated/order.js:1174 -#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1012 -#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1954 -#: templates/js/translated/stock.js:2588 +#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1283 +#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1949 +#: templates/js/translated/stock.js:2583 msgid "Purchase Order" msgstr "" @@ -3973,7 +3996,7 @@ msgstr "" #: order/models.py:1046 order/templates/order/order_base.html:178 #: templates/js/translated/order.js:1679 templates/js/translated/order.js:2404 -#: templates/js/translated/part.js:1129 templates/js/translated/part.js:1161 +#: templates/js/translated/part.js:1400 templates/js/translated/part.js:1432 #: templates/js/translated/table_filters.js:358 msgid "Received" msgstr "" @@ -3984,7 +4007,7 @@ msgstr "" #: order/models.py:1054 stock/models.py:800 stock/serializers.py:173 #: stock/templates/stock/item_base.html:189 -#: templates/js/translated/stock.js:2005 +#: templates/js/translated/stock.js:2000 msgid "Purchase Price" msgstr "" @@ -4350,18 +4373,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:9 #: part/templates/part/import_wizard/ajax_match_fields.html:9 +#: part/templates/part/import_wizard/match_fields.html:9 #: templates/patterns/wizard/match_fields.html:8 msgid "Missing selections for the following required columns" msgstr "" #: order/templates/order/order_wizard/match_fields.html:20 #: part/templates/part/import_wizard/ajax_match_fields.html:20 +#: part/templates/part/import_wizard/match_fields.html:20 #: templates/patterns/wizard/match_fields.html:19 msgid "Duplicate selections found, see below. Fix them then retry submitting." msgstr "" #: order/templates/order/order_wizard/match_fields.html:29 #: order/templates/order/order_wizard/match_parts.html:21 +#: part/templates/part/import_wizard/match_fields.html:29 #: part/templates/part/import_wizard/match_references.html:21 #: templates/patterns/wizard/match_fields.html:28 msgid "Submit Selections" @@ -4369,18 +4395,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:35 #: part/templates/part/import_wizard/ajax_match_fields.html:28 +#: part/templates/part/import_wizard/match_fields.html:35 #: templates/patterns/wizard/match_fields.html:34 msgid "File Fields" msgstr "" #: order/templates/order/order_wizard/match_fields.html:42 #: part/templates/part/import_wizard/ajax_match_fields.html:35 +#: part/templates/part/import_wizard/match_fields.html:42 #: templates/patterns/wizard/match_fields.html:41 msgid "Remove column" msgstr "" #: order/templates/order/order_wizard/match_fields.html:60 #: part/templates/part/import_wizard/ajax_match_fields.html:53 +#: part/templates/part/import_wizard/match_fields.html:60 #: templates/patterns/wizard/match_fields.html:59 msgid "Duplicate selection" msgstr "" @@ -4389,12 +4418,13 @@ msgstr "" #: order/templates/order/order_wizard/match_parts.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: 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:102 templates/js/translated/build.js:485 #: templates/js/translated/build.js:641 templates/js/translated/build.js:2088 #: templates/js/translated/order.js:1122 templates/js/translated/order.js:1624 -#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:657 -#: templates/js/translated/stock.js:825 +#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:824 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4429,6 +4459,7 @@ msgstr "" #: order/templates/order/order_wizard/po_upload.html:27 #: part/templates/part/import_wizard/ajax_part_upload.html:10 +#: part/templates/part/import_wizard/part_upload.html:26 #: templates/patterns/wizard/upload.html:13 #, python-format msgid "Step %(step)s of %(count)s" @@ -4567,12 +4598,12 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:19 part/admin.py:219 part/models.py:3262 stock/admin.py:84 +#: part/admin.py:19 part/admin.py:252 part/models.py:3340 stock/admin.py:84 #: templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/admin.py:20 part/admin.py:221 part/models.py:3266 stock/admin.py:85 +#: part/admin.py:20 part/admin.py:254 part/models.py:3344 stock/admin.py:85 msgid "Part Name" msgstr "" @@ -4580,32 +4611,32 @@ msgstr "" msgid "Part Description" msgstr "" -#: part/admin.py:22 part/models.py:852 part/templates/part/part_base.html:272 -#: templates/js/translated/part.js:763 templates/js/translated/part.js:1491 -#: templates/js/translated/stock.js:1765 +#: part/admin.py:22 part/models.py:853 part/templates/part/part_base.html:272 +#: templates/js/translated/part.js:1034 templates/js/translated/part.js:1762 +#: templates/js/translated/stock.js:1760 msgid "IPN" msgstr "" -#: part/admin.py:23 part/models.py:860 part/templates/part/part_base.html:279 -#: report/models.py:171 templates/js/translated/part.js:768 +#: part/admin.py:23 part/models.py:861 part/templates/part/part_base.html:279 +#: report/models.py:171 templates/js/translated/part.js:1039 msgid "Revision" msgstr "" -#: part/admin.py:24 part/admin.py:145 part/models.py:838 +#: part/admin.py:24 part/admin.py:178 part/models.py:839 #: part/templates/part/category.html:87 part/templates/part/part_base.html:300 msgid "Keywords" msgstr "" -#: part/admin.py:28 part/admin.py:139 +#: part/admin.py:28 part/admin.py:172 #: templates/js/translated/model_renderers.js:338 msgid "Category ID" msgstr "" -#: part/admin.py:29 part/admin.py:140 +#: part/admin.py:29 part/admin.py:173 msgid "Category Name" msgstr "" -#: part/admin.py:30 part/admin.py:144 +#: part/admin.py:30 part/admin.py:177 msgid "Default Location ID" msgstr "" @@ -4613,7 +4644,7 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:33 part/models.py:944 part/templates/part/part_base.html:206 +#: part/admin.py:33 part/models.py:945 part/templates/part/part_base.html:206 msgid "Minimum Stock" msgstr "" @@ -4625,8 +4656,8 @@ msgstr "" #: part/admin.py:48 part/bom.py:145 part/templates/part/part_base.html:213 #: templates/js/translated/bom.js:1156 templates/js/translated/build.js:1935 -#: templates/js/translated/part.js:613 templates/js/translated/part.js:633 -#: templates/js/translated/part.js:1381 templates/js/translated/part.js:1559 +#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 +#: templates/js/translated/part.js:1652 templates/js/translated/part.js:1830 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4642,115 +4673,115 @@ msgid "Allocated" msgstr "" #: part/admin.py:51 part/templates/part/part_base.html:244 -#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 -#: templates/js/translated/part.js:1385 templates/js/translated/part.js:1566 +#: templates/js/translated/part.js:619 templates/js/translated/part.js:639 +#: templates/js/translated/part.js:1656 templates/js/translated/part.js:1837 msgid "Building" msgstr "" -#: part/admin.py:52 part/models.py:2846 +#: part/admin.py:52 part/models.py:2864 msgid "Minimum Cost" msgstr "" -#: part/admin.py:53 part/models.py:2852 +#: part/admin.py:53 part/models.py:2870 msgid "Maximum Cost" msgstr "" -#: part/admin.py:142 part/admin.py:216 stock/admin.py:26 stock/admin.py:98 +#: part/admin.py:175 part/admin.py:249 stock/admin.py:26 stock/admin.py:98 msgid "Parent ID" msgstr "" -#: part/admin.py:143 part/admin.py:218 stock/admin.py:27 +#: part/admin.py:176 part/admin.py:251 stock/admin.py:27 msgid "Parent Name" msgstr "" -#: part/admin.py:146 part/templates/part/category.html:81 +#: part/admin.py:179 part/templates/part/category.html:81 #: part/templates/part/category.html:94 msgid "Category Path" msgstr "" -#: part/admin.py:149 part/models.py:382 part/templates/part/cat_link.html:3 +#: part/admin.py:182 part/models.py:383 part/templates/part/cat_link.html:3 #: part/templates/part/category.html:23 part/templates/part/category.html:134 #: part/templates/part/category.html:154 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:84 -#: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:2065 templates/js/translated/search.js:146 +#: templates/InvenTree/settings/sidebar.html:43 +#: templates/js/translated/part.js:2346 templates/js/translated/search.js:146 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" -#: part/admin.py:211 +#: part/admin.py:244 msgid "BOM Level" msgstr "" -#: part/admin.py:213 +#: part/admin.py:246 msgid "BOM Item ID" msgstr "" -#: part/admin.py:217 +#: part/admin.py:250 msgid "Parent IPN" msgstr "" -#: part/admin.py:220 part/models.py:3270 +#: part/admin.py:253 part/models.py:3348 msgid "Part IPN" msgstr "" -#: part/admin.py:226 templates/js/translated/pricing.js:91 +#: part/admin.py:259 templates/js/translated/pricing.js:91 #: templates/js/translated/pricing.js:732 msgid "Minimum Price" msgstr "" -#: part/admin.py:227 templates/js/translated/pricing.js:86 +#: part/admin.py:260 templates/js/translated/pricing.js:86 #: templates/js/translated/pricing.js:740 msgid "Maximum Price" msgstr "" -#: part/api.py:536 +#: part/api.py:538 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:556 +#: part/api.py:558 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:574 +#: part/api.py:576 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:660 +#: part/api.py:662 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:818 +#: part/api.py:820 msgid "Valid" msgstr "" -#: part/api.py:819 +#: part/api.py:821 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:825 +#: part/api.py:827 msgid "This option must be selected" msgstr "" -#: part/api.py:1265 +#: part/api.py:1281 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1269 +#: part/api.py:1285 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1284 +#: part/api.py:1300 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1315 part/api.py:1319 part/api.py:1334 part/api.py:1338 +#: part/api.py:1331 part/api.py:1335 part/api.py:1350 part/api.py:1354 msgid "This field is required" msgstr "" -#: part/bom.py:142 part/models.py:116 part/models.py:887 -#: part/templates/part/category.html:109 part/templates/part/part_base.html:360 +#: part/bom.py:142 part/models.py:116 part/models.py:888 +#: part/templates/part/category.html:109 part/templates/part/part_base.html:374 msgid "Default Location" msgstr "" @@ -4801,7 +4832,7 @@ msgstr "" msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:159 part/models.py:3211 part/templates/part/category.html:16 +#: part/models.py:159 part/models.py:3289 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -4812,423 +4843,459 @@ msgstr "" msgid "Part Categories" msgstr "" -#: part/models.py:468 +#: part/models.py:469 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:538 part/models.py:550 +#: part/models.py:539 part/models.py:551 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:640 +#: part/models.py:641 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:771 +#: part/models.py:772 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:776 +#: part/models.py:777 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:790 +#: part/models.py:791 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:808 part/models.py:3267 +#: part/models.py:809 part/models.py:3345 msgid "Part name" msgstr "" -#: part/models.py:815 +#: part/models.py:816 msgid "Is Template" msgstr "" -#: part/models.py:816 +#: part/models.py:817 msgid "Is this part a template part?" msgstr "" -#: part/models.py:826 +#: part/models.py:827 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:827 +#: part/models.py:828 msgid "Variant Of" msgstr "" -#: part/models.py:833 +#: part/models.py:834 msgid "Part description" msgstr "" -#: part/models.py:839 +#: part/models.py:840 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:846 part/models.py:2966 part/models.py:3210 +#: part/models.py:847 part/models.py:3044 part/models.py:3288 #: part/templates/part/part_base.html:263 -#: templates/InvenTree/settings/settings.html:229 +#: templates/InvenTree/settings/settings.html:230 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1513 templates/js/translated/part.js:1770 +#: templates/js/translated/part.js:1784 templates/js/translated/part.js:2051 msgid "Category" msgstr "" -#: part/models.py:847 +#: part/models.py:848 msgid "Part category" msgstr "" -#: part/models.py:853 +#: part/models.py:854 msgid "Internal Part Number" msgstr "" -#: part/models.py:859 +#: part/models.py:860 msgid "Part revision or version number" msgstr "" -#: part/models.py:885 +#: part/models.py:886 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:930 part/templates/part/part_base.html:369 +#: part/models.py:931 part/templates/part/part_base.html:383 msgid "Default Supplier" msgstr "" -#: part/models.py:931 +#: part/models.py:932 msgid "Default supplier part" msgstr "" -#: part/models.py:938 +#: part/models.py:939 msgid "Default Expiry" msgstr "" -#: part/models.py:939 +#: part/models.py:940 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:945 +#: part/models.py:946 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:952 +#: part/models.py:953 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:958 +#: part/models.py:959 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:964 +#: part/models.py:965 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:970 +#: part/models.py:971 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:975 +#: part/models.py:976 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:980 +#: part/models.py:981 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:985 +#: part/models.py:986 msgid "Is this part active?" msgstr "" -#: part/models.py:990 +#: part/models.py:991 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:992 +#: part/models.py:993 msgid "Part notes" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "BOM checksum" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:997 +#: part/models.py:998 msgid "BOM checked by" msgstr "" -#: part/models.py:999 +#: part/models.py:1000 msgid "BOM checked date" msgstr "" -#: part/models.py:1003 +#: part/models.py:1004 msgid "Creation User" msgstr "" -#: part/models.py:1863 +#: part/models.py:1010 part/templates/part/part_base.html:345 +#: stock/templates/stock/item_base.html:445 +#: templates/js/translated/part.js:1901 +msgid "Last Stocktake" +msgstr "" + +#: part/models.py:1869 msgid "Sell multiple" msgstr "" -#: part/models.py:2763 +#: part/models.py:2781 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:2768 +#: part/models.py:2786 templates/js/translated/part.js:806 msgid "Updated" msgstr "" -#: part/models.py:2769 +#: part/models.py:2787 msgid "Timestamp of last pricing update" msgstr "" -#: part/models.py:2786 +#: part/models.py:2804 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:2787 +#: part/models.py:2805 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:2792 +#: part/models.py:2810 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:2793 +#: part/models.py:2811 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:2798 +#: part/models.py:2816 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:2799 +#: part/models.py:2817 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:2804 +#: part/models.py:2822 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:2805 +#: part/models.py:2823 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:2810 +#: part/models.py:2828 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:2811 +#: part/models.py:2829 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:2816 +#: part/models.py:2834 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:2817 +#: part/models.py:2835 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:2822 +#: part/models.py:2840 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:2823 +#: part/models.py:2841 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:2828 +#: part/models.py:2846 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:2829 +#: part/models.py:2847 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:2834 +#: part/models.py:2852 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:2835 +#: part/models.py:2853 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:2840 +#: part/models.py:2858 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:2841 +#: part/models.py:2859 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:2847 +#: part/models.py:2865 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:2853 +#: part/models.py:2871 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:2858 +#: part/models.py:2876 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:2859 +#: part/models.py:2877 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:2864 +#: part/models.py:2882 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:2865 +#: part/models.py:2883 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:2870 +#: part/models.py:2888 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:2871 +#: part/models.py:2889 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:2876 +#: part/models.py:2894 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:2877 +#: part/models.py:2895 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3013 +#: part/models.py:2913 +msgid "Part for stocktake" +msgstr "" + +#: part/models.py:2920 +msgid "Total available stock at time of stocktake" +msgstr "" + +#: part/models.py:2924 part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:63 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:2043 templates/js/translated/part.js:887 +#: templates/js/translated/pricing.js:537 +#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2511 +msgid "Date" +msgstr "" + +#: part/models.py:2925 +msgid "Date stocktake was performed" +msgstr "" + +#: part/models.py:2933 +msgid "Additional notes" +msgstr "" + +#: part/models.py:2941 +msgid "User who performed this stocktake" +msgstr "" + +#: part/models.py:3091 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3030 +#: part/models.py:3108 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:3050 templates/js/translated/part.js:2116 -#: templates/js/translated/stock.js:1379 +#: part/models.py:3128 templates/js/translated/part.js:2397 +#: templates/js/translated/stock.js:1378 msgid "Test Name" msgstr "" -#: part/models.py:3051 +#: part/models.py:3129 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3056 +#: part/models.py:3134 msgid "Test Description" msgstr "" -#: part/models.py:3057 +#: part/models.py:3135 msgid "Enter description for this test" msgstr "" -#: part/models.py:3062 templates/js/translated/part.js:2125 +#: part/models.py:3140 templates/js/translated/part.js:2406 #: templates/js/translated/table_filters.js:322 msgid "Required" msgstr "" -#: part/models.py:3063 +#: part/models.py:3141 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3068 templates/js/translated/part.js:2133 +#: part/models.py:3146 templates/js/translated/part.js:2414 msgid "Requires Value" msgstr "" -#: part/models.py:3069 +#: part/models.py:3147 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3074 templates/js/translated/part.js:2140 +#: part/models.py:3152 templates/js/translated/part.js:2421 msgid "Requires Attachment" msgstr "" -#: part/models.py:3075 +#: part/models.py:3153 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3116 +#: part/models.py:3194 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3124 +#: part/models.py:3202 msgid "Parameter Name" msgstr "" -#: part/models.py:3128 +#: part/models.py:3206 msgid "Parameter Units" msgstr "" -#: part/models.py:3133 +#: part/models.py:3211 msgid "Parameter description" msgstr "" -#: part/models.py:3166 +#: part/models.py:3244 msgid "Parent Part" msgstr "" -#: part/models.py:3168 part/models.py:3216 part/models.py:3217 -#: templates/InvenTree/settings/settings.html:224 +#: part/models.py:3246 part/models.py:3294 part/models.py:3295 +#: templates/InvenTree/settings/settings.html:225 msgid "Parameter Template" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Data" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Parameter Value" msgstr "" -#: part/models.py:3221 templates/InvenTree/settings/settings.html:233 +#: part/models.py:3299 templates/InvenTree/settings/settings.html:234 msgid "Default Value" msgstr "" -#: part/models.py:3222 +#: part/models.py:3300 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3259 +#: part/models.py:3337 msgid "Part ID or part name" msgstr "" -#: part/models.py:3263 +#: part/models.py:3341 msgid "Unique part ID value" msgstr "" -#: part/models.py:3271 +#: part/models.py:3349 msgid "Part IPN value" msgstr "" -#: part/models.py:3274 +#: part/models.py:3352 msgid "Level" msgstr "" -#: part/models.py:3275 +#: part/models.py:3353 msgid "BOM level" msgstr "" -#: part/models.py:3344 +#: part/models.py:3422 msgid "Select parent part" msgstr "" -#: part/models.py:3352 +#: part/models.py:3430 msgid "Sub part" msgstr "" -#: part/models.py:3353 +#: part/models.py:3431 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:3359 +#: part/models.py:3437 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:3363 part/templates/part/upload_bom.html:58 +#: part/models.py:3441 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:933 templates/js/translated/bom.js:986 #: templates/js/translated/build.js:1868 #: templates/js/translated/table_filters.js:84 @@ -5236,189 +5303,189 @@ msgstr "" msgid "Optional" msgstr "" -#: part/models.py:3364 +#: part/models.py:3442 msgid "This BOM item is optional" msgstr "" -#: part/models.py:3369 templates/js/translated/bom.js:929 +#: part/models.py:3447 templates/js/translated/bom.js:929 #: templates/js/translated/bom.js:995 templates/js/translated/build.js:1859 #: templates/js/translated/table_filters.js:88 msgid "Consumable" msgstr "" -#: part/models.py:3370 +#: part/models.py:3448 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:3374 part/templates/part/upload_bom.html:55 +#: part/models.py:3452 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:3375 +#: part/models.py:3453 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:3378 +#: part/models.py:3456 msgid "BOM item reference" msgstr "" -#: part/models.py:3381 +#: part/models.py:3459 msgid "BOM item notes" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "Checksum" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "BOM line checksum" msgstr "" -#: part/models.py:3387 part/templates/part/upload_bom.html:57 +#: part/models.py:3465 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1012 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:108 msgid "Inherited" msgstr "" -#: part/models.py:3388 +#: part/models.py:3466 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:3393 part/templates/part/upload_bom.html:56 +#: part/models.py:3471 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1004 msgid "Allow Variants" msgstr "" -#: part/models.py:3394 +#: part/models.py:3472 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:3480 stock/models.py:558 +#: part/models.py:3558 stock/models.py:558 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:3489 part/models.py:3491 +#: part/models.py:3567 part/models.py:3569 msgid "Sub part must be specified" msgstr "" -#: part/models.py:3618 +#: part/models.py:3696 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:3639 +#: part/models.py:3717 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:3652 +#: part/models.py:3730 msgid "Parent BOM item" msgstr "" -#: part/models.py:3660 +#: part/models.py:3738 msgid "Substitute part" msgstr "" -#: part/models.py:3675 +#: part/models.py:3753 msgid "Part 1" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Part 2" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Select Related Part" msgstr "" -#: part/models.py:3697 +#: part/models.py:3775 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:3701 +#: part/models.py:3779 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:155 part/serializers.py:183 stock/serializers.py:183 +#: part/serializers.py:157 part/serializers.py:185 stock/serializers.py:183 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:543 +#: part/serializers.py:584 msgid "Update" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:585 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:854 +#: part/serializers.py:895 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:862 +#: part/serializers.py:903 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:863 +#: part/serializers.py:904 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:868 +#: part/serializers.py:909 msgid "Include Inherited" msgstr "" -#: part/serializers.py:869 +#: part/serializers.py:910 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:874 +#: part/serializers.py:915 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:875 +#: part/serializers.py:916 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:921 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:881 +#: part/serializers.py:922 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:962 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:922 +#: part/serializers.py:963 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:952 +#: part/serializers.py:993 msgid "No part column specified" msgstr "" -#: part/serializers.py:995 +#: part/serializers.py:1036 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:998 +#: part/serializers.py:1039 msgid "No matching part found" msgstr "" -#: part/serializers.py:1001 +#: part/serializers.py:1042 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1010 +#: part/serializers.py:1051 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1059 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1039 +#: part/serializers.py:1080 msgid "At least one BOM item is required" msgstr "" @@ -5450,7 +5517,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:267 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:290 msgid "BOM actions" msgstr "" @@ -5507,8 +5574,8 @@ msgstr "" msgid "New Part" msgstr "" -#: part/templates/part/category.html:169 part/templates/part/detail.html:366 -#: part/templates/part/detail.html:397 +#: part/templates/part/category.html:169 part/templates/part/detail.html:389 +#: part/templates/part/detail.html:420 msgid "Options" msgstr "" @@ -5556,7 +5623,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:404 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:407 msgid "Duplicate Part" msgstr "" @@ -5593,118 +5660,128 @@ msgstr "" msgid "Refresh" msgstr "" -#: part/templates/part/detail.html:59 +#: part/templates/part/detail.html:65 +msgid "Add stocktake information" +msgstr "" + +#: part/templates/part/detail.html:66 part/templates/part/part_sidebar.html:49 +#: stock/admin.py:107 templates/js/translated/stock.js:1905 +msgid "Stocktake" +msgstr "" + +#: part/templates/part/detail.html:82 msgid "Part Test Templates" msgstr "" -#: part/templates/part/detail.html:64 +#: part/templates/part/detail.html:87 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:144 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:141 +#: part/templates/part/detail.html:164 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:156 +#: part/templates/part/detail.html:179 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:160 +#: part/templates/part/detail.html:183 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:161 +#: part/templates/part/detail.html:184 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:188 +#: part/templates/part/detail.html:211 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:225 part/templates/part/part_sidebar.html:52 +#: part/templates/part/detail.html:248 part/templates/part/part_sidebar.html:57 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:229 part/templates/part/detail.html:230 +#: part/templates/part/detail.html:252 part/templates/part/detail.html:253 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:250 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:273 part/templates/part/part_sidebar.html:17 +#: report/templates/report/inventree_bill_of_materials_report.html:100 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:255 +#: part/templates/part/detail.html:278 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:259 templates/js/translated/bom.js:309 +#: part/templates/part/detail.html:282 templates/js/translated/bom.js:309 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:261 +#: part/templates/part/detail.html:284 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:271 +#: part/templates/part/detail.html:294 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:272 templates/js/translated/part.js:276 +#: part/templates/part/detail.html:295 templates/js/translated/part.js:279 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:273 +#: part/templates/part/detail.html:296 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:278 part/templates/part/detail.html:279 +#: part/templates/part/detail.html:301 part/templates/part/detail.html:302 #: templates/js/translated/bom.js:1268 templates/js/translated/bom.js:1269 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:292 +#: part/templates/part/detail.html:315 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:310 +#: part/templates/part/detail.html:333 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:337 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:360 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:353 +#: part/templates/part/detail.html:376 msgid "Part Suppliers" msgstr "" -#: part/templates/part/detail.html:383 +#: part/templates/part/detail.html:406 msgid "Part Manufacturers" msgstr "" -#: part/templates/part/detail.html:399 +#: part/templates/part/detail.html:422 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:696 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:704 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:796 msgid "Add Test Result Template" msgstr "" #: part/templates/part/import_wizard/ajax_part_upload.html:29 #: part/templates/part/import_wizard/part_upload.html:14 -msgid "Unsuffitient privileges." +msgid "Insufficient privileges." msgstr "" #: part/templates/part/import_wizard/part_upload.html:8 @@ -5715,6 +5792,34 @@ msgstr "" msgid "Import Parts from File" msgstr "" +#: part/templates/part/import_wizard/part_upload.html:31 +msgid "Requirements for part import" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "The part import file must contain the required named columns as provided in the " +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:89 +msgid "Download Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:92 +#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 +#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 +msgid "Format" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:93 +#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 +#: templates/js/translated/order.js:999 +msgid "Select file format" +msgstr "" + #: part/templates/part/part_app_base.html:12 msgid "Part List" msgstr "" @@ -5804,12 +5909,12 @@ msgstr "" #: templates/js/translated/company.js:660 #: templates/js/translated/company.js:921 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:677 templates/js/translated/part.js:755 +#: templates/js/translated/part.js:680 templates/js/translated/part.js:1026 msgid "Inactive" msgstr "" #: part/templates/part/part_base.html:165 -#: part/templates/part/part_base.html:666 +#: part/templates/part/part_base.html:680 msgid "Show Part Details" msgstr "" @@ -5837,38 +5942,38 @@ msgid "Minimum stock level" msgstr "" #: part/templates/part/part_base.html:330 templates/js/translated/bom.js:1032 -#: templates/js/translated/part.js:798 templates/js/translated/part.js:1604 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:1875 #: templates/js/translated/pricing.js:124 #: templates/js/translated/pricing.js:762 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:345 +#: part/templates/part/part_base.html:359 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:349 +#: part/templates/part/part_base.html:363 #: stock/templates/stock/item_base.html:331 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:449 +#: part/templates/part/part_base.html:463 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:495 +#: part/templates/part/part_base.html:509 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:512 +#: part/templates/part/part_base.html:526 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:564 +#: part/templates/part/part_base.html:578 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:660 +#: part/templates/part/part_base.html:674 msgid "Hide Part Details" msgstr "" @@ -5920,15 +6025,6 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" -#: part/templates/part/part_scheduling.html:13 -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:63 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:2043 templates/js/translated/pricing.js:537 -#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2516 -msgid "Date" -msgstr "" - #: part/templates/part/part_scheduling.html:14 msgid "Scheduled Quantity" msgstr "" @@ -5941,7 +6037,7 @@ msgstr "" msgid "Scheduling" msgstr "" -#: part/templates/part/part_sidebar.html:48 +#: part/templates/part/part_sidebar.html:53 msgid "Test Templates" msgstr "" @@ -5960,7 +6056,7 @@ msgstr "" #: part/templates/part/prices.html:25 stock/admin.py:106 #: stock/templates/stock/item_base.html:440 #: templates/js/translated/company.js:1039 -#: templates/js/translated/stock.js:1940 +#: templates/js/translated/stock.js:1935 msgid "Last Updated" msgstr "" @@ -6023,8 +6119,8 @@ msgstr "" msgid "Add Sell Price Break" msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:639 -#: templates/js/translated/part.js:1373 templates/js/translated/part.js:1375 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:1644 templates/js/translated/part.js:1646 msgid "No Stock" msgstr "" @@ -6087,27 +6183,32 @@ msgstr "" msgid "{title} v{version}" msgstr "" -#: part/views.py:109 +#: part/views.py:111 msgid "Match References" msgstr "" -#: part/views.py:354 +#: part/views.py:239 +#, python-brace-format +msgid "Can't import part {name} because there is no category assigned" +msgstr "" + +#: part/views.py:378 msgid "Part QR Code" msgstr "" -#: part/views.py:372 +#: part/views.py:396 msgid "Select Part Image" msgstr "" -#: part/views.py:398 +#: part/views.py:422 msgid "Updated part image" msgstr "" -#: part/views.py:401 +#: part/views.py:425 msgid "Part image not found" msgstr "" -#: part/views.py:493 +#: part/views.py:517 msgid "Part Pricing" msgstr "" @@ -6156,28 +6257,48 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:29 -#: plugin/builtin/integration/core_notifications.py:31 +#: plugin/builtin/integration/core_notifications.py:33 msgid "InvenTree contributors" msgstr "" -#: plugin/builtin/integration/core_notifications.py:30 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:32 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notificaton methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:37 -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:80 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:38 -#: plugin/builtin/integration/core_notifications.py:57 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:81 msgid "Allow sending of emails for event notifications" msgstr "" +#: plugin/builtin/integration/core_notifications.py:45 +msgid "Enable slack notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:46 +msgid "Allow sending of slack channel messages for event notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:51 +msgid "Slack incoming webhook url" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:52 +msgid "URL that is used to send messages to a slack channel" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:162 +msgid "Open link" +msgstr "" + #: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" @@ -6409,6 +6530,10 @@ msgstr "" msgid "Asset file description" msgstr "" +#: report/templates/report/inventree_bill_of_materials_report.html:133 +msgid "Materials needed" +msgstr "" + #: report/templates/report/inventree_build_order_base.html:146 msgid "Required For" msgstr "" @@ -6427,7 +6552,7 @@ msgstr "" #: templates/js/translated/build.js:1244 templates/js/translated/build.js:1745 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:121 templates/js/translated/order.js:3611 -#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:522 +#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:521 msgid "Serial Number" msgstr "" @@ -6459,8 +6584,9 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: stock/admin.py:87 templates/js/translated/stock.js:642 -#: templates/js/translated/stock.js:812 templates/js/translated/stock.js:2765 +#: stock/admin.py:87 templates/js/translated/part.js:749 +#: templates/js/translated/stock.js:641 templates/js/translated/stock.js:811 +#: templates/js/translated/stock.js:2760 msgid "Serial" msgstr "" @@ -6515,13 +6641,9 @@ msgstr "" msgid "Purchase Order ID" msgstr "" -#: stock/admin.py:107 templates/js/translated/stock.js:1910 -msgid "Stocktake" -msgstr "" - #: stock/admin.py:108 stock/models.py:764 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/stock.js:1924 +#: templates/js/translated/stock.js:1919 msgid "Expiry Date" msgstr "" @@ -6936,7 +7058,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2912 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2907 msgid "Install Stock Item" msgstr "" @@ -6944,7 +7066,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1561 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1560 msgid "Add Test Result" msgstr "" @@ -7117,10 +7239,6 @@ msgstr "" msgid "Stale" msgstr "" -#: stock/templates/stock/item_base.html:445 -msgid "Last Stocktake" -msgstr "" - #: stock/templates/stock/item_base.html:449 msgid "No stocktake performed" msgstr "" @@ -7394,7 +7512,8 @@ msgstr "" #: templates/InvenTree/notifications/notifications.html:10 #: templates/InvenTree/notifications/sidebar.html:5 -#: templates/InvenTree/settings/sidebar.html:17 templates/notifications.html:5 +#: templates/InvenTree/settings/sidebar.html:17 +#: templates/InvenTree/settings/sidebar.html:35 templates/notifications.html:5 msgid "Notifications" msgstr "" @@ -7475,6 +7594,14 @@ msgstr "" msgid "Open in new tab" msgstr "" +#: templates/InvenTree/settings/notifications.html:9 +msgid "Global Notification Settings" +msgstr "" + +#: templates/InvenTree/settings/notifications.html:18 +msgid "Slug" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -7492,7 +7619,7 @@ msgid "Part Parameter Templates" msgstr "" #: templates/InvenTree/settings/plugin.html:10 -#: templates/InvenTree/settings/sidebar.html:55 +#: templates/InvenTree/settings/sidebar.html:57 msgid "Plugin Settings" msgstr "" @@ -7501,7 +7628,7 @@ msgid "Changing the settings below require you to immediately restart the server msgstr "" #: templates/InvenTree/settings/plugin.html:38 -#: templates/InvenTree/settings/sidebar.html:57 +#: templates/InvenTree/settings/sidebar.html:59 msgid "Plugins" msgstr "" @@ -7669,67 +7796,67 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:117 +#: templates/InvenTree/settings/settings.html:118 msgid "Edit Plugin Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:119 +#: templates/InvenTree/settings/settings.html:120 msgid "Edit Notification Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:122 +#: templates/InvenTree/settings/settings.html:123 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:124 +#: templates/InvenTree/settings/settings.html:125 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:214 +#: templates/InvenTree/settings/settings.html:215 msgid "No category parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:236 -#: templates/InvenTree/settings/settings.html:361 -msgid "Edit Template" -msgstr "" - #: templates/InvenTree/settings/settings.html:237 #: templates/InvenTree/settings/settings.html:362 +msgid "Edit Template" +msgstr "" + +#: templates/InvenTree/settings/settings.html:238 +#: templates/InvenTree/settings/settings.html:363 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:277 +#: templates/InvenTree/settings/settings.html:278 msgid "Create Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:322 +#: templates/InvenTree/settings/settings.html:323 msgid "Delete Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:334 +#: templates/InvenTree/settings/settings.html:335 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:338 +#: templates/InvenTree/settings/settings.html:339 #: templates/js/translated/news.js:29 #: templates/js/translated/notification.js:36 msgid "ID" msgstr "" -#: templates/InvenTree/settings/settings.html:380 +#: templates/InvenTree/settings/settings.html:381 msgid "Create Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:399 +#: templates/InvenTree/settings/settings.html:400 msgid "Edit Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:413 +#: templates/InvenTree/settings/settings.html:414 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/InvenTree/settings/settings.html:421 +#: templates/InvenTree/settings/settings.html:422 msgid "Delete Part Parameter Template" msgstr "" @@ -7758,12 +7885,12 @@ msgid "Search Settings" msgstr "" #: templates/InvenTree/settings/sidebar.html:19 -#: templates/InvenTree/settings/sidebar.html:37 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Label Printing" msgstr "" #: templates/InvenTree/settings/sidebar.html:21 -#: templates/InvenTree/settings/sidebar.html:39 +#: templates/InvenTree/settings/sidebar.html:41 msgid "Reporting" msgstr "" @@ -7775,7 +7902,7 @@ msgstr "" msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:43 +#: templates/InvenTree/settings/sidebar.html:45 msgid "Categories" msgstr "" @@ -7945,64 +8072,64 @@ msgstr "" msgid "Do you really want to remove the selected email address?" msgstr "" -#: templates/InvenTree/settings/user_display.html:28 +#: templates/InvenTree/settings/user_display.html:29 msgid "Theme Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:38 +#: templates/InvenTree/settings/user_display.html:39 msgid "Select theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:49 +#: templates/InvenTree/settings/user_display.html:50 msgid "Set Theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:57 +#: templates/InvenTree/settings/user_display.html:58 msgid "Language Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:66 +#: templates/InvenTree/settings/user_display.html:67 msgid "Select language" msgstr "" -#: templates/InvenTree/settings/user_display.html:82 +#: templates/InvenTree/settings/user_display.html:83 #, python-format msgid "%(lang_translated)s%% translated" msgstr "" -#: templates/InvenTree/settings/user_display.html:84 +#: templates/InvenTree/settings/user_display.html:85 msgid "No translations available" msgstr "" -#: templates/InvenTree/settings/user_display.html:91 +#: templates/InvenTree/settings/user_display.html:92 msgid "Set Language" msgstr "" -#: templates/InvenTree/settings/user_display.html:94 +#: templates/InvenTree/settings/user_display.html:95 msgid "Some languages are not complete" msgstr "" -#: templates/InvenTree/settings/user_display.html:96 +#: templates/InvenTree/settings/user_display.html:97 msgid "Show only sufficent" msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "and hidden." msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "Show them too" msgstr "" -#: templates/InvenTree/settings/user_display.html:105 +#: templates/InvenTree/settings/user_display.html:106 msgid "Help the translation efforts!" msgstr "" -#: templates/InvenTree/settings/user_display.html:106 +#: templates/InvenTree/settings/user_display.html:107 msgid "Native language translation of the web application is community contributed via crowdin. Contributions are welcomed and encouraged." msgstr "" -#: templates/InvenTree/settings/user_display.html:107 +#: templates/InvenTree/settings/user_display.html:108 msgid "InvenTree Translation Project" msgstr "" @@ -8080,7 +8207,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:646 +#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:649 msgid "Confirm" msgstr "تایید" @@ -8313,7 +8440,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 -#: templates/js/translated/part.js:2445 +#: templates/js/translated/part.js:2726 msgid "Minimum Quantity" msgstr "" @@ -8466,7 +8593,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1089 +#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1088 msgid "Remove stock item" msgstr "" @@ -8548,16 +8675,6 @@ msgstr "" msgid "Download BOM Template" msgstr "" -#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 -#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 -msgid "Format" -msgstr "" - -#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 -#: templates/js/translated/order.js:999 -msgid "Select file format" -msgstr "" - #: templates/js/translated/bom.js:320 msgid "Multi Level BOM" msgstr "" @@ -8688,7 +8805,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:1145 templates/js/translated/build.js:1923 -#: templates/js/translated/part.js:790 templates/js/translated/part.js:1572 +#: templates/js/translated/part.js:1061 templates/js/translated/part.js:1843 msgid "Includes variant stock" msgstr "" @@ -8773,13 +8890,13 @@ msgstr "" msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:317 templates/js/translated/stock.js:95 -#: templates/js/translated/stock.js:237 +#: templates/js/translated/build.js:317 templates/js/translated/stock.js:94 +#: templates/js/translated/stock.js:236 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:319 templates/js/translated/stock.js:97 -#: templates/js/translated/stock.js:239 +#: templates/js/translated/build.js:319 templates/js/translated/stock.js:96 +#: templates/js/translated/stock.js:238 msgid "Latest serial number" msgstr "" @@ -8987,9 +9104,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1466 -#: templates/js/translated/part.js:2003 templates/js/translated/stock.js:1725 -#: templates/js/translated/stock.js:2428 +#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1737 +#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1724 +#: templates/js/translated/stock.js:2423 msgid "Select" msgstr "" @@ -9001,7 +9118,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2695 +#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2690 msgid "No user information" msgstr "" @@ -9074,34 +9191,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:652 -#: templates/js/translated/company.js:913 templates/js/translated/part.js:661 -#: templates/js/translated/part.js:747 +#: templates/js/translated/company.js:913 templates/js/translated/part.js:664 +#: templates/js/translated/part.js:1018 msgid "Template part" msgstr "" #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:917 templates/js/translated/part.js:665 -#: templates/js/translated/part.js:751 +#: templates/js/translated/company.js:917 templates/js/translated/part.js:668 +#: templates/js/translated/part.js:1022 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:784 templates/js/translated/part.js:870 +#: templates/js/translated/company.js:784 templates/js/translated/part.js:1141 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:821 templates/js/translated/part.js:912 +#: templates/js/translated/company.js:821 templates/js/translated/part.js:1183 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:822 templates/js/translated/part.js:913 +#: templates/js/translated/company.js:822 templates/js/translated/part.js:1184 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:841 templates/js/translated/part.js:930 +#: templates/js/translated/company.js:841 templates/js/translated/part.js:1201 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:852 templates/js/translated/part.js:942 +#: templates/js/translated/company.js:852 templates/js/translated/part.js:1213 msgid "Delete Parameter" msgstr "" @@ -9181,61 +9298,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:369 templates/js/translated/forms.js:384 -#: templates/js/translated/forms.js:398 templates/js/translated/forms.js:412 +#: templates/js/translated/forms.js:372 templates/js/translated/forms.js:387 +#: templates/js/translated/forms.js:401 templates/js/translated/forms.js:415 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:371 +#: templates/js/translated/forms.js:374 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:386 +#: templates/js/translated/forms.js:389 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:400 +#: templates/js/translated/forms.js:403 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:414 +#: templates/js/translated/forms.js:417 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:672 +#: templates/js/translated/forms.js:675 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:773 +#: templates/js/translated/forms.js:776 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1266 templates/modals.html:19 +#: templates/js/translated/forms.js:1269 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1703 +#: templates/js/translated/forms.js:1706 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1919 templates/search.html:29 +#: templates/js/translated/forms.js:1922 templates/search.html:29 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2172 +#: templates/js/translated/forms.js:2175 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:2640 +#: templates/js/translated/forms.js:2643 msgid "Select Columns" msgstr "" @@ -9256,7 +9373,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1113 +#: templates/js/translated/stock.js:1112 msgid "Select Stock Items" msgstr "" @@ -9590,7 +9707,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2184 +#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2179 msgid "Stock Status" msgstr "" @@ -9614,7 +9731,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1982 templates/js/translated/part.js:983 +#: templates/js/translated/order.js:1982 templates/js/translated/part.js:1254 msgid "No purchase orders found" msgstr "" @@ -9647,8 +9764,8 @@ msgstr "" msgid "Total" msgstr "" -#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1085 -#: templates/js/translated/part.js:1137 +#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1356 +#: templates/js/translated/part.js:1408 msgid "Total Quantity" msgstr "" @@ -9666,11 +9783,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2388 templates/js/translated/order.js:3900 -#: templates/js/translated/part.js:1121 +#: templates/js/translated/part.js:1392 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1166 +#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1437 msgid "Receive line item" msgstr "" @@ -9791,7 +9908,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3623 templates/js/translated/order.js:3712 -#: templates/js/translated/stock.js:1641 +#: templates/js/translated/stock.js:1640 msgid "Shipped to customer" msgstr "" @@ -9835,334 +9952,358 @@ msgstr "" msgid "No matching lines" msgstr "" -#: templates/js/translated/part.js:52 +#: templates/js/translated/part.js:55 msgid "Part Attributes" msgstr "" -#: templates/js/translated/part.js:56 +#: templates/js/translated/part.js:59 msgid "Part Creation Options" msgstr "" -#: templates/js/translated/part.js:60 +#: templates/js/translated/part.js:63 msgid "Part Duplication Options" msgstr "" -#: templates/js/translated/part.js:64 +#: templates/js/translated/part.js:67 msgid "Supplier Options" msgstr "" -#: templates/js/translated/part.js:78 +#: templates/js/translated/part.js:81 msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:168 +#: templates/js/translated/part.js:171 msgid "Create Initial Stock" msgstr "" -#: templates/js/translated/part.js:169 +#: templates/js/translated/part.js:172 msgid "Create an initial stock item for this part" msgstr "" -#: templates/js/translated/part.js:176 +#: templates/js/translated/part.js:179 msgid "Initial Stock Quantity" msgstr "" -#: templates/js/translated/part.js:177 +#: templates/js/translated/part.js:180 msgid "Specify initial stock quantity for this part" msgstr "" -#: templates/js/translated/part.js:184 +#: templates/js/translated/part.js:187 msgid "Select destination stock location" msgstr "" -#: templates/js/translated/part.js:202 +#: templates/js/translated/part.js:205 msgid "Copy Category Parameters" msgstr "" -#: templates/js/translated/part.js:203 +#: templates/js/translated/part.js:206 msgid "Copy parameter templates from selected part category" msgstr "" -#: templates/js/translated/part.js:211 +#: templates/js/translated/part.js:214 msgid "Add Supplier Data" msgstr "" -#: templates/js/translated/part.js:212 +#: templates/js/translated/part.js:215 msgid "Create initial supplier data for this part" msgstr "" -#: templates/js/translated/part.js:268 +#: templates/js/translated/part.js:271 msgid "Copy Image" msgstr "" -#: templates/js/translated/part.js:269 +#: templates/js/translated/part.js:272 msgid "Copy image from original part" msgstr "" -#: templates/js/translated/part.js:277 +#: templates/js/translated/part.js:280 msgid "Copy bill of materials from original part" msgstr "" -#: templates/js/translated/part.js:284 +#: templates/js/translated/part.js:287 msgid "Copy Parameters" msgstr "" -#: templates/js/translated/part.js:285 +#: templates/js/translated/part.js:288 msgid "Copy parameter data from original part" msgstr "" -#: templates/js/translated/part.js:298 +#: templates/js/translated/part.js:301 msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:313 templates/js/translated/stock.js:122 +#: templates/js/translated/part.js:316 templates/js/translated/stock.js:121 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:329 +#: templates/js/translated/part.js:332 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:342 +#: templates/js/translated/part.js:345 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:347 +#: templates/js/translated/part.js:350 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:359 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:360 +#: templates/js/translated/part.js:363 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:368 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:394 +#: templates/js/translated/part.js:397 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:396 +#: templates/js/translated/part.js:399 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:407 +#: templates/js/translated/part.js:410 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:459 +#: templates/js/translated/part.js:462 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:460 +#: templates/js/translated/part.js:463 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:477 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:476 +#: templates/js/translated/part.js:479 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:477 +#: templates/js/translated/part.js:480 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:478 +#: templates/js/translated/part.js:481 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:485 +#: templates/js/translated/part.js:488 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:521 +#: templates/js/translated/part.js:524 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:523 +#: templates/js/translated/part.js:526 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:531 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:530 +#: templates/js/translated/part.js:533 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:547 +#: templates/js/translated/part.js:550 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:560 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:560 +#: templates/js/translated/part.js:563 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:585 +#: templates/js/translated/part.js:588 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1554 +#: templates/js/translated/part.js:612 templates/js/translated/part.js:1825 #: templates/js/translated/table_filters.js:488 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:622 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:653 templates/js/translated/part.js:739 +#: templates/js/translated/part.js:656 templates/js/translated/part.js:1010 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:657 templates/js/translated/part.js:743 +#: templates/js/translated/part.js:660 templates/js/translated/part.js:1014 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:669 +#: templates/js/translated/part.js:672 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:673 +#: templates/js/translated/part.js:676 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:815 +#: templates/js/translated/part.js:761 +msgid "Stock item has not been checked recently" +msgstr "" + +#: templates/js/translated/part.js:769 +msgid "Update item" +msgstr "" + +#: templates/js/translated/part.js:770 +msgid "Delete item" +msgstr "" + +#: templates/js/translated/part.js:871 +msgid "No stocktake information available" +msgstr "" + +#: templates/js/translated/part.js:910 templates/js/translated/part.js:933 +msgid "Edit Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:914 templates/js/translated/part.js:945 +msgid "Delete Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:1086 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1236 +#: templates/js/translated/part.js:1507 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1260 +#: templates/js/translated/part.js:1531 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1327 templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1598 templates/js/translated/part.js:1936 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1521 +#: templates/js/translated/part.js:1792 msgid "No category" msgstr "" -#: templates/js/translated/part.js:1552 +#: templates/js/translated/part.js:1823 msgid "No stock" msgstr "" -#: templates/js/translated/part.js:1576 +#: templates/js/translated/part.js:1847 msgid "Allocated to build orders" msgstr "" -#: templates/js/translated/part.js:1580 +#: templates/js/translated/part.js:1851 msgid "Allocated to sales orders" msgstr "" -#: templates/js/translated/part.js:1679 templates/js/translated/part.js:1922 -#: templates/js/translated/stock.js:2387 +#: templates/js/translated/part.js:1960 templates/js/translated/part.js:2203 +#: templates/js/translated/stock.js:2382 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1695 +#: templates/js/translated/part.js:1976 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1761 +#: templates/js/translated/part.js:2042 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1766 +#: templates/js/translated/part.js:2047 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1771 +#: templates/js/translated/part.js:2052 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1784 +#: templates/js/translated/part.js:2065 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1942 templates/js/translated/stock.js:2407 +#: templates/js/translated/part.js:2223 templates/js/translated/stock.js:2402 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2022 +#: templates/js/translated/part.js:2303 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2038 +#: templates/js/translated/part.js:2319 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2383 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2153 templates/js/translated/stock.js:1338 +#: templates/js/translated/part.js:2434 templates/js/translated/stock.js:1337 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2154 templates/js/translated/stock.js:1339 -#: templates/js/translated/stock.js:1599 +#: templates/js/translated/part.js:2435 templates/js/translated/stock.js:1338 +#: templates/js/translated/stock.js:1598 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2441 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2182 +#: templates/js/translated/part.js:2463 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2196 +#: templates/js/translated/part.js:2477 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2277 templates/js/translated/part.js:2278 +#: templates/js/translated/part.js:2558 templates/js/translated/part.js:2559 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2280 +#: templates/js/translated/part.js:2561 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:2286 +#: templates/js/translated/part.js:2567 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:2336 +#: templates/js/translated/part.js:2617 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2623 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:2438 +#: templates/js/translated/part.js:2719 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2454 +#: templates/js/translated/part.js:2735 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:2499 +#: templates/js/translated/part.js:2780 msgid "Minimum Stock Level" msgstr "" @@ -10290,388 +10431,388 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:74 +#: templates/js/translated/stock.js:73 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:104 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:114 +#: templates/js/translated/stock.js:113 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:148 +#: templates/js/translated/stock.js:147 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:163 +#: templates/js/translated/stock.js:162 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:177 +#: templates/js/translated/stock.js:176 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:184 +#: templates/js/translated/stock.js:183 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:193 +#: templates/js/translated/stock.js:192 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:197 +#: templates/js/translated/stock.js:196 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:201 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:256 +#: templates/js/translated/stock.js:255 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:298 +#: templates/js/translated/stock.js:297 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:304 +#: templates/js/translated/stock.js:303 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:368 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:389 +#: templates/js/translated/stock.js:388 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:405 +#: templates/js/translated/stock.js:404 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:410 +#: templates/js/translated/stock.js:409 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:431 +#: templates/js/translated/stock.js:430 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:481 +#: templates/js/translated/stock.js:480 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:494 +#: templates/js/translated/stock.js:493 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:519 +#: templates/js/translated/stock.js:518 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:523 templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:522 templates/js/translated/stock.js:523 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:540 +#: templates/js/translated/stock.js:539 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:560 +#: templates/js/translated/stock.js:559 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:568 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:692 +#: templates/js/translated/stock.js:691 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:693 +#: templates/js/translated/stock.js:692 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:770 +#: templates/js/translated/stock.js:769 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:771 +#: templates/js/translated/stock.js:770 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:773 +#: templates/js/translated/stock.js:772 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:774 +#: templates/js/translated/stock.js:773 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:863 +#: templates/js/translated/stock.js:862 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:864 +#: templates/js/translated/stock.js:863 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:958 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:959 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:966 +#: templates/js/translated/stock.js:965 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:967 +#: templates/js/translated/stock.js:966 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:971 +#: templates/js/translated/stock.js:970 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:972 +#: templates/js/translated/stock.js:971 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:976 +#: templates/js/translated/stock.js:975 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:977 users/models.py:220 +#: templates/js/translated/stock.js:976 users/models.py:221 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:981 +#: templates/js/translated/stock.js:980 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1114 +#: templates/js/translated/stock.js:1113 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1141 +#: templates/js/translated/stock.js:1140 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1277 +#: templates/js/translated/stock.js:1276 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1279 +#: templates/js/translated/stock.js:1278 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1284 +#: templates/js/translated/stock.js:1283 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1331 +#: templates/js/translated/stock.js:1330 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1334 +#: templates/js/translated/stock.js:1333 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1360 +#: templates/js/translated/stock.js:1359 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1417 +#: templates/js/translated/stock.js:1416 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1582 +#: templates/js/translated/stock.js:1581 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1604 +#: templates/js/translated/stock.js:1603 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1633 +#: templates/js/translated/stock.js:1632 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1637 +#: templates/js/translated/stock.js:1636 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1645 +#: templates/js/translated/stock.js:1644 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1651 +#: templates/js/translated/stock.js:1650 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1820 +#: templates/js/translated/stock.js:1815 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1825 +#: templates/js/translated/stock.js:1820 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1828 +#: templates/js/translated/stock.js:1823 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1831 +#: templates/js/translated/stock.js:1826 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1833 +#: templates/js/translated/stock.js:1828 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1835 +#: templates/js/translated/stock.js:1830 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1838 +#: templates/js/translated/stock.js:1833 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1837 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1844 +#: templates/js/translated/stock.js:1839 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1846 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1853 +#: templates/js/translated/stock.js:1848 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1855 +#: templates/js/translated/stock.js:1850 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1859 +#: templates/js/translated/stock.js:1854 #: templates/js/translated/table_filters.js:216 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1989 +#: templates/js/translated/stock.js:1984 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2026 +#: templates/js/translated/stock.js:2021 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2199 +#: templates/js/translated/stock.js:2194 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2213 +#: templates/js/translated/stock.js:2208 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2214 +#: templates/js/translated/stock.js:2209 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2446 +#: templates/js/translated/stock.js:2441 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2536 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2557 +#: templates/js/translated/stock.js:2552 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2579 +#: templates/js/translated/stock.js:2574 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2598 +#: templates/js/translated/stock.js:2593 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2617 +#: templates/js/translated/stock.js:2612 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2635 +#: templates/js/translated/stock.js:2630 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2658 +#: templates/js/translated/stock.js:2653 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2666 +#: templates/js/translated/stock.js:2661 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2737 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2793 templates/js/translated/stock.js:2829 +#: templates/js/translated/stock.js:2788 templates/js/translated/stock.js:2824 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2845 +#: templates/js/translated/stock.js:2840 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2866 +#: templates/js/translated/stock.js:2861 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2867 +#: templates/js/translated/stock.js:2862 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2869 +#: templates/js/translated/stock.js:2864 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2870 +#: templates/js/translated/stock.js:2865 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:2866 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2872 +#: templates/js/translated/stock.js:2867 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2885 +#: templates/js/translated/stock.js:2880 msgid "Select part to install" msgstr "" @@ -10696,7 +10837,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:92 -#: templates/js/translated/table_filters.js:516 +#: templates/js/translated/table_filters.js:520 msgid "Has Pricing" msgstr "" @@ -10912,6 +11053,10 @@ msgstr "" msgid "Purchasable" msgstr "" +#: templates/js/translated/table_filters.js:504 +msgid "Has stocktake entries" +msgstr "" + #: templates/js/translated/tables.js:70 msgid "Display calendar view" msgstr "" @@ -11206,35 +11351,35 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:207 +#: users/models.py:208 msgid "Permission set" msgstr "" -#: users/models.py:215 +#: users/models.py:216 msgid "Group" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "View" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "Permission to view items" msgstr "" -#: users/models.py:220 +#: users/models.py:221 msgid "Permission to add items" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Change" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Permissions to edit items" msgstr "" -#: users/models.py:224 +#: users/models.py:225 msgid "Permission to delete items" msgstr "" diff --git a/InvenTree/locale/fr/LC_MESSAGES/django.po b/InvenTree/locale/fr/LC_MESSAGES/django.po index 4529ce1ee6..b0a7cdc2a1 100644 --- a/InvenTree/locale/fr/LC_MESSAGES/django.po +++ b/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: 2022-12-30 20:46+0000\n" -"PO-Revision-Date: 2022-12-31 11:29\n" +"POT-Creation-Date: 2023-01-01 11:05+0000\n" +"PO-Revision-Date: 2023-01-01 11:26\n" "Last-Translator: \n" "Language-Team: French\n" "Language: fr_FR\n" @@ -34,7 +34,7 @@ msgstr "Entrer la date" #: company/templates/company/sidebar.html:25 order/models.py:943 #: order/templates/order/po_sidebar.html:11 #: order/templates/order/so_sidebar.html:17 part/admin.py:27 -#: part/templates/part/part_sidebar.html:57 +#: part/models.py:2932 part/templates/part/part_sidebar.html:62 #: report/templates/report/inventree_build_order_base.html:172 #: stock/admin.py:103 stock/models.py:2061 stock/models.py:2169 #: stock/serializers.py:321 stock/serializers.py:454 stock/serializers.py:535 @@ -44,8 +44,8 @@ msgstr "Entrer la date" #: templates/js/translated/company.js:1023 #: templates/js/translated/order.js:2435 templates/js/translated/order.js:2569 #: templates/js/translated/order.js:3067 templates/js/translated/order.js:4004 -#: templates/js/translated/order.js:4385 templates/js/translated/stock.js:1413 -#: templates/js/translated/stock.js:2020 +#: templates/js/translated/order.js:4385 templates/js/translated/part.js:882 +#: templates/js/translated/stock.js:1412 templates/js/translated/stock.js:2015 msgid "Notes" msgstr "Notes" @@ -204,18 +204,18 @@ msgstr "Pièce jointe" msgid "Select file to attach" msgstr "Sélectionnez un fichier à joindre" -#: InvenTree/models.py:412 common/models.py:2366 company/models.py:129 +#: InvenTree/models.py:412 common/models.py:2373 company/models.py:129 #: company/models.py:281 company/models.py:516 order/models.py:85 -#: order/models.py:1282 part/admin.py:25 part/models.py:865 +#: order/models.py:1282 part/admin.py:25 part/models.py:866 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: stock/admin.py:102 templates/js/translated/company.js:692 #: templates/js/translated/company.js:1012 -#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1615 +#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1886 msgid "Link" msgstr "Lien" -#: InvenTree/models.py:413 build/models.py:290 part/models.py:866 +#: InvenTree/models.py:413 build/models.py:290 part/models.py:867 #: stock/models.py:716 msgid "Link to external URL" msgstr "Lien vers une url externe" @@ -229,12 +229,13 @@ msgstr "Commentaire" msgid "File comment" msgstr "Commentaire du fichier" -#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1810 -#: common/models.py:1811 common/models.py:2034 common/models.py:2035 -#: common/models.py:2296 common/models.py:2297 part/models.py:2948 -#: part/models.py:2968 plugin/models.py:264 plugin/models.py:265 +#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1817 +#: common/models.py:1818 common/models.py:2041 common/models.py:2042 +#: common/models.py:2303 common/models.py:2304 part/models.py:2940 +#: part/models.py:3026 part/models.py:3046 plugin/models.py:264 +#: plugin/models.py:265 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2689 +#: templates/js/translated/stock.js:2684 msgid "User" msgstr "Utilisateur" @@ -271,19 +272,20 @@ msgstr "Erreur lors du renommage du fichier" msgid "Invalid choice" msgstr "Choix invalide" -#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2020 -#: company/models.py:363 label/models.py:101 part/models.py:809 -#: part/models.py:3123 plugin/models.py:94 report/models.py:152 +#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2027 +#: company/models.py:363 label/models.py:101 part/models.py:810 +#: part/models.py:3201 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 +#: templates/InvenTree/settings/notifications.html:17 #: templates/InvenTree/settings/plugin.html:60 #: templates/InvenTree/settings/plugin.html:104 #: templates/InvenTree/settings/plugin_settings.html:23 -#: templates/InvenTree/settings/settings.html:344 +#: templates/InvenTree/settings/settings.html:345 #: templates/js/translated/company.js:581 #: templates/js/translated/company.js:794 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:711 templates/js/translated/part.js:880 -#: templates/js/translated/part.js:2010 templates/js/translated/stock.js:2434 +#: templates/js/translated/part.js:982 templates/js/translated/part.js:1151 +#: templates/js/translated/part.js:2291 templates/js/translated/stock.js:2429 msgid "Name" msgstr "Nom" @@ -292,24 +294,25 @@ msgstr "Nom" #: company/models.py:522 company/templates/company/company_base.html:72 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:108 label/models.py:108 -#: order/models.py:83 part/admin.py:141 part/admin.py:222 part/models.py:832 -#: part/models.py:3132 part/templates/part/category.html:75 +#: order/models.py:83 part/admin.py:174 part/admin.py:255 part/models.py:833 +#: part/models.py:3210 part/templates/part/category.html:75 #: part/templates/part/part_base.html:172 #: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/admin.py:25 stock/templates/stock/location.html:117 +#: templates/InvenTree/settings/notifications.html:19 #: templates/InvenTree/settings/plugin_settings.html:28 -#: templates/InvenTree/settings/settings.html:355 +#: templates/InvenTree/settings/settings.html:356 #: templates/js/translated/bom.js:592 templates/js/translated/bom.js:895 #: templates/js/translated/build.js:2596 templates/js/translated/company.js:445 #: templates/js/translated/company.js:703 #: templates/js/translated/company.js:987 templates/js/translated/order.js:2030 #: templates/js/translated/order.js:2267 templates/js/translated/order.js:2845 -#: templates/js/translated/part.js:773 templates/js/translated/part.js:1223 -#: templates/js/translated/part.js:1497 templates/js/translated/part.js:2046 -#: templates/js/translated/part.js:2121 templates/js/translated/stock.js:1787 -#: templates/js/translated/stock.js:2466 templates/js/translated/stock.js:2526 +#: templates/js/translated/part.js:1044 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1768 templates/js/translated/part.js:2327 +#: templates/js/translated/part.js:2402 templates/js/translated/stock.js:1782 +#: templates/js/translated/stock.js:2461 templates/js/translated/stock.js:2521 msgid "Description" msgstr "Description" @@ -322,7 +325,7 @@ msgid "parent" msgstr "parent" #: InvenTree/models.py:580 InvenTree/models.py:581 -#: templates/js/translated/part.js:2055 templates/js/translated/stock.js:2475 +#: templates/js/translated/part.js:2336 templates/js/translated/stock.js:2470 msgid "Path" msgstr "Chemin d'accès" @@ -354,7 +357,7 @@ 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:58 part/models.py:3468 +#: InvenTree/serializers.py:58 part/models.py:3546 msgid "Must be a valid number" msgstr "Doit être un nombre valide" @@ -421,107 +424,107 @@ 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/settings.py:639 +#: InvenTree/settings.py:642 msgid "Czech" msgstr "Tchèque" -#: InvenTree/settings.py:640 +#: InvenTree/settings.py:643 msgid "Danish" msgstr "Danois" -#: InvenTree/settings.py:641 +#: InvenTree/settings.py:644 msgid "German" msgstr "Allemand" -#: InvenTree/settings.py:642 +#: InvenTree/settings.py:645 msgid "Greek" msgstr "Grec" -#: InvenTree/settings.py:643 +#: InvenTree/settings.py:646 msgid "English" msgstr "Anglais" -#: InvenTree/settings.py:644 +#: InvenTree/settings.py:647 msgid "Spanish" msgstr "Espagnol" -#: InvenTree/settings.py:645 +#: InvenTree/settings.py:648 msgid "Spanish (Mexican)" msgstr "Espagnol (Mexique)" -#: InvenTree/settings.py:646 +#: InvenTree/settings.py:649 msgid "Farsi / Persian" msgstr "Farsi / Perse" -#: InvenTree/settings.py:647 +#: InvenTree/settings.py:650 msgid "French" msgstr "Français" -#: InvenTree/settings.py:648 +#: InvenTree/settings.py:651 msgid "Hebrew" msgstr "Hébreu" -#: InvenTree/settings.py:649 +#: InvenTree/settings.py:652 msgid "Hungarian" msgstr "Hongrois" -#: InvenTree/settings.py:650 +#: InvenTree/settings.py:653 msgid "Italian" msgstr "Italien" -#: InvenTree/settings.py:651 +#: InvenTree/settings.py:654 msgid "Japanese" msgstr "Japonais" -#: InvenTree/settings.py:652 +#: InvenTree/settings.py:655 msgid "Korean" msgstr "Coréen" -#: InvenTree/settings.py:653 +#: InvenTree/settings.py:656 msgid "Dutch" msgstr "Néerlandais" -#: InvenTree/settings.py:654 +#: InvenTree/settings.py:657 msgid "Norwegian" msgstr "Norvégien" -#: InvenTree/settings.py:655 +#: InvenTree/settings.py:658 msgid "Polish" msgstr "Polonais" -#: InvenTree/settings.py:656 +#: InvenTree/settings.py:659 msgid "Portuguese" msgstr "Portugais" -#: InvenTree/settings.py:657 +#: InvenTree/settings.py:660 msgid "Portuguese (Brazilian)" msgstr "Portugais (Brésilien)" -#: InvenTree/settings.py:658 +#: InvenTree/settings.py:661 msgid "Russian" msgstr "Russe" -#: InvenTree/settings.py:659 +#: InvenTree/settings.py:662 msgid "Slovenian" msgstr "" -#: InvenTree/settings.py:660 +#: InvenTree/settings.py:663 msgid "Swedish" msgstr "Suédois" -#: InvenTree/settings.py:661 +#: InvenTree/settings.py:664 msgid "Thai" msgstr "Thaïlandais" -#: InvenTree/settings.py:662 +#: InvenTree/settings.py:665 msgid "Turkish" msgstr "Turc" -#: InvenTree/settings.py:663 +#: InvenTree/settings.py:666 msgid "Vietnamese" msgstr "Vietnamien" -#: InvenTree/settings.py:664 +#: InvenTree/settings.py:667 msgid "Chinese" msgstr "Chinois" @@ -652,7 +655,7 @@ msgstr "Séparer de l'élément parent" msgid "Split child item" msgstr "Fractionner l'élément enfant" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2124 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2119 msgid "Merged stock items" msgstr "Articles de stock fusionnés" @@ -756,7 +759,7 @@ msgstr "Ordre de Fabrication" #: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:141 -#: templates/InvenTree/settings/sidebar.html:47 +#: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:254 users/models.py:41 msgid "Build Orders" msgstr "Ordres de Fabrication" @@ -766,8 +769,9 @@ msgid "Build Order Reference" msgstr "Référence de l' Ordre de Fabrication" #: build/models.py:155 order/models.py:241 order/models.py:651 -#: order/models.py:941 part/admin.py:224 part/models.py:3378 +#: order/models.py:941 part/admin.py:257 part/models.py:3456 #: part/templates/part/upload_bom.html:54 +#: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 #: templates/js/translated/bom.js:729 templates/js/translated/bom.js:905 @@ -793,13 +797,15 @@ msgstr "BuildOrder associé a cette fabrication" #: build/models.py:180 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:684 #: order/models.py:1038 order/models.py:1149 order/models.py:1150 -#: part/models.py:381 part/models.py:2781 part/models.py:2894 -#: part/models.py:2909 part/models.py:2928 part/models.py:2946 -#: part/models.py:3045 part/models.py:3166 part/models.py:3258 -#: part/models.py:3343 part/models.py:3659 part/serializers.py:853 -#: part/templates/part/part_app_base.html:8 +#: part/models.py:382 part/models.py:2799 part/models.py:2912 +#: part/models.py:2972 part/models.py:2987 part/models.py:3006 +#: part/models.py:3024 part/models.py:3123 part/models.py:3244 +#: part/models.py:3336 part/models.py:3421 part/models.py:3737 +#: part/serializers.py:894 part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 +#: report/templates/report/inventree_bill_of_materials_report.html:110 +#: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_base.html:109 #: report/templates/report/inventree_po_report.html:89 #: report/templates/report/inventree_so_report.html:90 stock/serializers.py:90 @@ -819,12 +825,12 @@ msgstr "BuildOrder associé a cette fabrication" #: templates/js/translated/order.js:1172 templates/js/translated/order.js:1676 #: templates/js/translated/order.js:2252 templates/js/translated/order.js:3199 #: templates/js/translated/order.js:3595 templates/js/translated/order.js:3825 -#: templates/js/translated/part.js:1208 templates/js/translated/part.js:1280 -#: templates/js/translated/part.js:1474 templates/js/translated/pricing.js:102 -#: templates/js/translated/stock.js:618 templates/js/translated/stock.js:783 -#: templates/js/translated/stock.js:993 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2552 templates/js/translated/stock.js:2747 -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/part.js:1479 templates/js/translated/part.js:1551 +#: templates/js/translated/part.js:1745 templates/js/translated/pricing.js:102 +#: templates/js/translated/stock.js:617 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:992 templates/js/translated/stock.js:1738 +#: templates/js/translated/stock.js:2547 templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2879 msgid "Part" msgstr "Pièce" @@ -890,7 +896,7 @@ msgstr "Code de lot" msgid "Batch code for this build output" msgstr "Code de lot pour ce build output" -#: build/models.py:252 order/models.py:87 part/models.py:1001 +#: build/models.py:252 order/models.py:87 part/models.py:1002 #: part/templates/part/part_base.html:318 templates/js/translated/order.js:2858 msgid "Creation Date" msgstr "Date de création" @@ -923,7 +929,7 @@ msgstr "Utilisateur ayant émis cette commande de construction" #: build/models.py:283 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:101 #: order/templates/order/order_base.html:185 -#: order/templates/order/sales_order_base.html:183 part/models.py:1005 +#: order/templates/order/sales_order_base.html:183 part/models.py:1006 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2658 templates/js/translated/order.js:2064 msgid "Responsible" @@ -936,7 +942,7 @@ msgstr "Utilisateur responsable de cette commande de construction" #: build/models.py:289 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:188 -#: part/templates/part/part_base.html:376 stock/models.py:714 +#: part/templates/part/part_base.html:390 stock/models.py:714 #: stock/templates/stock/item_base.html:203 msgid "External Link" msgstr "Lien Externe" @@ -1011,8 +1017,8 @@ msgstr "Construction à laquelle allouer des pièces" #: templates/js/translated/order.js:107 templates/js/translated/order.js:3200 #: templates/js/translated/order.js:3502 templates/js/translated/order.js:3507 #: templates/js/translated/order.js:3602 templates/js/translated/order.js:3694 -#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 -#: templates/js/translated/stock.js:2625 +#: templates/js/translated/part.js:803 templates/js/translated/stock.js:618 +#: templates/js/translated/stock.js:783 templates/js/translated/stock.js:2620 msgid "Stock Item" msgstr "Article en stock" @@ -1022,12 +1028,13 @@ msgstr "Stock d'origine de l'article" #: build/models.py:1364 build/serializers.py:192 #: build/templates/build/build_base.html:85 -#: build/templates/build/detail.html:34 common/models.py:1842 +#: build/templates/build/detail.html:34 common/models.py:1849 #: order/models.py:934 order/models.py:1460 order/serializers.py:1206 -#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:223 -#: part/forms.py:40 part/models.py:3359 +#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:256 +#: part/forms.py:40 part/models.py:2919 part/models.py:3437 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 +#: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_base.html:113 #: report/templates/report/inventree_po_report.html:90 #: report/templates/report/inventree_so_report.html:91 @@ -1049,13 +1056,14 @@ msgstr "Stock d'origine de l'article" #: templates/js/translated/order.js:3201 templates/js/translated/order.js:3521 #: templates/js/translated/order.js:3608 templates/js/translated/order.js:3700 #: templates/js/translated/order.js:3847 templates/js/translated/order.js:4338 -#: templates/js/translated/part.js:1078 templates/js/translated/part.js:2568 +#: templates/js/translated/part.js:805 templates/js/translated/part.js:876 +#: templates/js/translated/part.js:1349 templates/js/translated/part.js:2849 #: templates/js/translated/pricing.js:114 #: templates/js/translated/pricing.js:207 #: templates/js/translated/pricing.js:255 -#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:490 -#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:814 -#: templates/js/translated/stock.js:2674 templates/js/translated/stock.js:2759 +#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:489 +#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:813 +#: templates/js/translated/stock.js:2669 templates/js/translated/stock.js:2754 msgid "Quantity" msgstr "Quantité" @@ -1097,8 +1105,8 @@ msgid "Enter quantity for build output" msgstr "Entrer la quantité désiré pour la fabrication" #: build/serializers.py:207 build/serializers.py:683 order/models.py:327 -#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:645 -#: part/serializers.py:1016 stock/models.py:574 stock/models.py:1312 +#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:686 +#: part/serializers.py:1057 stock/models.py:574 stock/models.py:1312 #: stock/serializers.py:294 msgid "Quantity must be greater than zero" msgstr "La quantité doit être supérieure à zéro" @@ -1113,7 +1121,7 @@ msgstr "Quantité entière requise, car la facture de matériaux contient des pi #: build/serializers.py:231 order/serializers.py:463 order/serializers.py:1210 #: stock/serializers.py:303 templates/js/translated/order.js:1545 -#: templates/js/translated/stock.js:303 templates/js/translated/stock.js:491 +#: templates/js/translated/stock.js:302 templates/js/translated/stock.js:490 msgid "Serial Numbers" msgstr "Numéros de série" @@ -1146,9 +1154,10 @@ msgstr "Une liste d'ordre de production doit être fourni" #: templates/js/translated/build.js:1759 templates/js/translated/order.js:1572 #: templates/js/translated/order.js:3514 templates/js/translated/order.js:3619 #: templates/js/translated/order.js:3627 templates/js/translated/order.js:3708 -#: templates/js/translated/part.js:183 templates/js/translated/stock.js:620 -#: templates/js/translated/stock.js:785 templates/js/translated/stock.js:995 -#: templates/js/translated/stock.js:1895 templates/js/translated/stock.js:2566 +#: templates/js/translated/part.js:186 templates/js/translated/part.js:804 +#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 +#: templates/js/translated/stock.js:994 templates/js/translated/stock.js:1890 +#: templates/js/translated/stock.js:2561 msgid "Location" msgstr "Emplacement" @@ -1162,8 +1171,8 @@ msgstr "Emplacement des ordres de production achevés" #: stock/templates/stock/item_base.html:421 #: templates/js/translated/barcode.js:237 templates/js/translated/build.js:2630 #: templates/js/translated/order.js:1681 templates/js/translated/order.js:2034 -#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1870 -#: templates/js/translated/stock.js:2643 templates/js/translated/stock.js:2775 +#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:2638 templates/js/translated/stock.js:2770 msgid "Status" msgstr "État" @@ -1239,8 +1248,8 @@ msgstr "La quantité nécessaire n'a pas encore été complétée" msgid "Build order has incomplete outputs" msgstr "L'ordre de production a des sorties incomplètes" -#: build/serializers.py:595 build/serializers.py:640 part/models.py:3495 -#: part/models.py:3651 +#: build/serializers.py:595 build/serializers.py:640 part/models.py:3573 +#: part/models.py:3729 msgid "BOM Item" msgstr "Article du BOM" @@ -1406,7 +1415,7 @@ msgstr "Le stock n'a pas été entièrement alloué à cet ordre de construction #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2670 templates/js/translated/order.js:2051 #: templates/js/translated/order.js:2382 templates/js/translated/order.js:2866 -#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1093 +#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1364 msgid "Target Date" msgstr "Date Cible" @@ -1484,8 +1493,8 @@ msgstr "Pièces allouées" #: stock/templates/stock/item_base.html:168 #: templates/js/translated/build.js:1250 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:1884 -#: templates/js/translated/stock.js:2782 +#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:1879 +#: templates/js/translated/stock.js:2777 #: templates/js/translated/table_filters.js:179 #: templates/js/translated/table_filters.js:270 msgid "Batch" @@ -1617,8 +1626,8 @@ msgstr "Sorties de Construction terminées" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:86 #: order/templates/order/sales_order_detail.html:140 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:210 -#: part/templates/part/part_sidebar.html:55 stock/templates/stock/item.html:117 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:233 +#: part/templates/part/part_sidebar.html:60 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" msgstr "Pieces jointes" @@ -1635,7 +1644,7 @@ msgstr "Allocation terminée" msgid "All untracked stock items have been allocated" msgstr "Tous les articles de stock non suivis ont été alloués" -#: build/templates/build/index.html:18 part/templates/part/detail.html:316 +#: build/templates/build/index.html:18 part/templates/part/detail.html:339 msgid "New Build Order" msgstr "Nouvel ordre de construction" @@ -1928,9 +1937,9 @@ msgstr "Copier les templates de paramètres de catégorie" 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:1014 part/admin.py:41 part/models.py:3168 +#: common/models.py:1014 part/admin.py:41 part/models.py:3246 #: report/models.py:158 templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:504 +#: templates/js/translated/table_filters.js:508 msgid "Template" msgstr "Modèle" @@ -1938,7 +1947,7 @@ msgstr "Modèle" msgid "Parts are templates by default" msgstr "Les pièces sont des templates par défaut" -#: common/models.py:1021 part/admin.py:37 part/admin.py:229 part/models.py:957 +#: common/models.py:1021 part/admin.py:37 part/admin.py:262 part/models.py:958 #: templates/js/translated/bom.js:1595 #: templates/js/translated/table_filters.js:196 #: templates/js/translated/table_filters.js:467 @@ -1949,7 +1958,7 @@ msgstr "Assemblage" msgid "Parts can be assembled from other components by default" msgstr "Les composantes peuvent être assemblées à partir d'autres composants par défaut" -#: common/models.py:1028 part/admin.py:38 part/models.py:963 +#: common/models.py:1028 part/admin.py:38 part/models.py:964 #: templates/js/translated/table_filters.js:475 msgid "Component" msgstr "Composant" @@ -1958,7 +1967,7 @@ msgstr "Composant" msgid "Parts can be used as sub-components by default" msgstr "Les composantes peuvent être utilisées comme sous-composants par défaut" -#: common/models.py:1035 part/admin.py:39 part/models.py:974 +#: common/models.py:1035 part/admin.py:39 part/models.py:975 msgid "Purchaseable" msgstr "Achetable" @@ -1966,7 +1975,7 @@ msgstr "Achetable" msgid "Parts are purchaseable by default" msgstr "Les pièces sont achetables par défaut" -#: common/models.py:1042 part/admin.py:40 part/models.py:979 +#: common/models.py:1042 part/admin.py:40 part/models.py:980 #: templates/js/translated/table_filters.js:496 msgid "Salable" msgstr "Vendable" @@ -1975,10 +1984,10 @@ msgstr "Vendable" msgid "Parts are salable by default" msgstr "Les pièces sont vendables par défaut" -#: common/models.py:1049 part/admin.py:42 part/models.py:969 +#: common/models.py:1049 part/admin.py:42 part/models.py:970 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:120 -#: templates/js/translated/table_filters.js:508 +#: templates/js/translated/table_filters.js:512 msgid "Trackable" msgstr "Traçable" @@ -1986,10 +1995,10 @@ msgstr "Traçable" msgid "Parts are trackable by default" msgstr "Les pièces sont traçables par défaut" -#: common/models.py:1056 part/admin.py:43 part/models.py:989 +#: common/models.py:1056 part/admin.py:43 part/models.py:990 #: part/templates/part/part_base.html:156 #: templates/js/translated/table_filters.js:42 -#: templates/js/translated/table_filters.js:512 +#: templates/js/translated/table_filters.js:516 msgid "Virtual" msgstr "Virtuelle" @@ -2417,7 +2426,7 @@ msgstr "" msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1461 common/models.py:1803 +#: common/models.py:1461 common/models.py:1810 msgid "Settings key (must be unique - case insensitive" msgstr "Clé du paramètre (doit être unique - insensible à la casse)" @@ -2749,41 +2758,50 @@ msgstr "" msgid "Display part scheduling information" msgstr "" -#: common/models.py:1778 -msgid "Table String Length" +#: common/models.py:1778 part/templates/part/detail.html:61 +#: templates/js/translated/part.js:822 +msgid "Part Stocktake" msgstr "" #: common/models.py:1779 +msgid "Display part stocktake information" +msgstr "" + +#: common/models.py:1785 +msgid "Table String Length" +msgstr "" + +#: common/models.py:1786 msgid "Maximimum length limit for strings displayed in table views" msgstr "" -#: common/models.py:1843 +#: common/models.py:1850 msgid "Price break quantity" msgstr "" -#: common/models.py:1850 company/serializers.py:393 order/models.py:975 -#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1145 +#: common/models.py:1857 company/serializers.py:393 order/models.py:975 +#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1416 #: templates/js/translated/pricing.js:354 msgid "Price" msgstr "Prix" -#: common/models.py:1851 +#: common/models.py:1858 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2011 common/models.py:2189 +#: common/models.py:2018 common/models.py:2196 msgid "Endpoint" msgstr "" -#: common/models.py:2012 +#: common/models.py:2019 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2021 +#: common/models.py:2028 msgid "Name for this webhook" msgstr "" -#: common/models.py:2026 part/admin.py:36 part/models.py:984 +#: common/models.py:2033 part/admin.py:36 part/models.py:985 #: plugin/models.py:100 templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:116 #: templates/js/translated/table_filters.js:336 @@ -2791,131 +2809,133 @@ msgstr "" msgid "Active" msgstr "Actif" -#: common/models.py:2027 +#: common/models.py:2034 msgid "Is this webhook active" msgstr "" -#: common/models.py:2041 +#: common/models.py:2048 msgid "Token" msgstr "Jeton" -#: common/models.py:2042 +#: common/models.py:2049 msgid "Token for access" msgstr "" -#: common/models.py:2049 +#: common/models.py:2056 msgid "Secret" msgstr "Confidentiel" -#: common/models.py:2050 +#: common/models.py:2057 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2156 +#: common/models.py:2163 msgid "Message ID" msgstr "ID message" -#: common/models.py:2157 +#: common/models.py:2164 msgid "Unique identifier for this message" msgstr "Identifiant unique pour ce message" -#: common/models.py:2165 +#: common/models.py:2172 msgid "Host" msgstr "Hôte" -#: common/models.py:2166 +#: common/models.py:2173 msgid "Host from which this message was received" msgstr "Hôte à partir duquel ce message a été reçu" -#: common/models.py:2173 +#: common/models.py:2180 msgid "Header" msgstr "Entête" -#: common/models.py:2174 +#: common/models.py:2181 msgid "Header of this message" msgstr "En-tête de ce message" -#: common/models.py:2180 +#: common/models.py:2187 msgid "Body" msgstr "Corps" -#: common/models.py:2181 +#: common/models.py:2188 msgid "Body of this message" msgstr "Corps de ce message" -#: common/models.py:2190 +#: common/models.py:2197 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2195 +#: common/models.py:2202 msgid "Worked on" msgstr "" -#: common/models.py:2196 +#: common/models.py:2203 msgid "Was the work on this message finished?" msgstr "Le travail sur ce message est-il terminé ?" -#: common/models.py:2355 +#: common/models.py:2362 msgid "Id" msgstr "" -#: common/models.py:2361 templates/js/translated/news.js:35 +#: common/models.py:2368 templates/js/translated/news.js:35 msgid "Title" msgstr "" -#: common/models.py:2371 templates/js/translated/news.js:51 +#: common/models.py:2378 templates/js/translated/news.js:51 msgid "Published" msgstr "" -#: common/models.py:2376 templates/InvenTree/settings/plugin.html:62 +#: common/models.py:2383 templates/InvenTree/settings/plugin.html:62 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/news.js:47 msgid "Author" msgstr "" -#: common/models.py:2381 templates/js/translated/news.js:43 +#: common/models.py:2388 templates/js/translated/news.js:43 msgid "Summary" msgstr "" -#: common/models.py:2386 +#: common/models.py:2393 msgid "Read" msgstr "" -#: common/models.py:2387 +#: common/models.py:2394 msgid "Was this news item read?" msgstr "" -#: common/notifications.py:293 +#: common/notifications.py:294 #, python-brace-format msgid "New {verbose_name}" msgstr "Nouveau {verbose_name}" -#: common/notifications.py:295 +#: common/notifications.py:296 msgid "A new order has been created and assigned to you" msgstr "Une nouvelle commande a été créée et vous a été assignée" -#: common/notifications.py:301 +#: common/notifications.py:302 msgid "Items Received" msgstr "Articles reçus" -#: common/notifications.py:303 +#: common/notifications.py:304 msgid "Items have been received against a purchase order" msgstr "Des articles d'un bon de commande ont été reçus" -#: common/notifications.py:415 +#: common/notifications.py:416 msgid "Error raised by plugin" msgstr "" #: common/views.py:85 order/templates/order/order_wizard/po_upload.html:51 #: order/templates/order/purchase_order_detail.html:25 order/views.py:102 -#: part/views.py:107 templates/patterns/wizard/upload.html:37 +#: part/templates/part/import_wizard/part_upload.html:58 part/views.py:109 +#: templates/patterns/wizard/upload.html:37 msgid "Upload File" msgstr "Téléverser un fichier" #: common/views.py:86 order/templates/order/order_wizard/match_fields.html:52 #: order/views.py:103 #: part/templates/part/import_wizard/ajax_match_fields.html:45 -#: part/views.py:108 templates/patterns/wizard/match_fields.html:51 +#: part/templates/part/import_wizard/match_fields.html:52 part/views.py:110 +#: templates/patterns/wizard/match_fields.html:51 msgid "Match Fields" msgstr "" @@ -2934,7 +2954,9 @@ msgstr "Composantes importées" #: common/views.py:509 order/templates/order/order_wizard/match_fields.html:27 #: order/templates/order/order_wizard/match_parts.html:19 #: order/templates/order/order_wizard/po_upload.html:49 +#: part/templates/part/import_wizard/match_fields.html:27 #: part/templates/part/import_wizard/match_references.html:19 +#: part/templates/part/import_wizard/part_upload.html:56 #: templates/patterns/wizard/match_fields.html:26 #: templates/patterns/wizard/upload.html:35 msgid "Previous Step" @@ -2995,7 +3017,7 @@ msgstr "Point de contact" msgid "Link to external company information" msgstr "Lien externe vers les informations de l'entreprise" -#: company/models.py:140 part/models.py:878 +#: company/models.py:140 part/models.py:879 msgid "Image" msgstr "" @@ -3028,8 +3050,8 @@ msgid "Does this company manufacture parts?" msgstr "Cette entreprise fabrique-t-elle des pièces?" #: company/models.py:153 company/serializers.py:399 -#: company/templates/company/company_base.html:107 part/models.py:2762 -#: part/serializers.py:154 part/serializers.py:182 stock/serializers.py:182 +#: company/templates/company/company_base.html:107 part/models.py:2780 +#: part/serializers.py:156 part/serializers.py:184 stock/serializers.py:182 #: templates/InvenTree/settings/pricing.html:64 msgid "Currency" msgstr "Devise" @@ -3055,12 +3077,12 @@ msgstr "" #: templates/js/translated/company.js:433 #: templates/js/translated/company.js:534 #: templates/js/translated/company.js:669 -#: templates/js/translated/company.js:957 templates/js/translated/part.js:238 +#: templates/js/translated/company.js:957 templates/js/translated/part.js:241 #: templates/js/translated/table_filters.js:439 msgid "Manufacturer" msgstr "Fabricant" -#: company/models.py:269 templates/js/translated/part.js:239 +#: company/models.py:269 templates/js/translated/part.js:242 msgid "Select manufacturer" msgstr "Sélectionner un fabricant" @@ -3070,11 +3092,11 @@ msgstr "Sélectionner un fabricant" #: templates/js/translated/company.js:533 #: templates/js/translated/company.js:685 #: templates/js/translated/company.js:976 templates/js/translated/order.js:2286 -#: templates/js/translated/part.js:249 templates/js/translated/part.js:1067 +#: templates/js/translated/part.js:252 templates/js/translated/part.js:1338 msgid "MPN" msgstr "" -#: company/models.py:276 templates/js/translated/part.js:250 +#: company/models.py:276 templates/js/translated/part.js:253 msgid "Manufacturer Part Number" msgstr "" @@ -3100,8 +3122,8 @@ msgstr "" #: company/models.py:370 #: report/templates/report/inventree_test_report_base.html:95 #: stock/models.py:2156 templates/js/translated/company.js:582 -#: templates/js/translated/company.js:800 templates/js/translated/part.js:889 -#: templates/js/translated/stock.js:1399 +#: templates/js/translated/company.js:800 templates/js/translated/part.js:1160 +#: templates/js/translated/stock.js:1398 msgid "Value" msgstr "Valeur" @@ -3109,10 +3131,10 @@ msgstr "Valeur" msgid "Parameter value" msgstr "" -#: company/models.py:377 part/admin.py:26 part/models.py:951 -#: part/models.py:3128 part/templates/part/part_base.html:286 -#: templates/InvenTree/settings/settings.html:349 -#: templates/js/translated/company.js:806 templates/js/translated/part.js:895 +#: company/models.py:377 part/admin.py:26 part/models.py:952 +#: part/models.py:3206 part/templates/part/part_base.html:286 +#: templates/InvenTree/settings/settings.html:350 +#: templates/js/translated/company.js:806 templates/js/translated/part.js:1166 msgid "Units" msgstr "" @@ -3132,24 +3154,24 @@ msgstr "" #: templates/js/translated/company.js:304 #: templates/js/translated/company.js:437 #: templates/js/translated/company.js:930 templates/js/translated/order.js:2017 -#: templates/js/translated/part.js:219 templates/js/translated/part.js:1035 +#: templates/js/translated/part.js:222 templates/js/translated/part.js:1306 #: templates/js/translated/pricing.js:231 #: templates/js/translated/table_filters.js:443 msgid "Supplier" msgstr "Fournisseur" -#: company/models.py:498 templates/js/translated/part.js:220 +#: company/models.py:498 templates/js/translated/part.js:223 msgid "Select supplier" msgstr "" #: company/models.py:503 company/templates/company/supplier_part.html:146 #: part/bom.py:253 part/bom.py:281 templates/js/translated/company.js:303 -#: templates/js/translated/order.js:2273 templates/js/translated/part.js:230 -#: templates/js/translated/part.js:1053 templates/js/translated/pricing.js:243 +#: templates/js/translated/order.js:2273 templates/js/translated/part.js:233 +#: templates/js/translated/part.js:1324 templates/js/translated/pricing.js:243 msgid "SKU" msgstr "" -#: company/models.py:504 templates/js/translated/part.js:231 +#: company/models.py:504 templates/js/translated/part.js:234 msgid "Supplier stock keeping unit" msgstr "" @@ -3166,24 +3188,25 @@ msgid "Supplier part description" msgstr "Description de la pièce du fournisseur" #: company/models.py:528 company/templates/company/supplier_part.html:181 -#: part/admin.py:225 part/models.py:3381 part/templates/part/upload_bom.html:59 +#: part/admin.py:258 part/models.py:3459 part/templates/part/upload_bom.html:59 +#: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:397 msgid "Note" msgstr "Note" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "base cost" msgstr "coût de base" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "Minimum charge (e.g. stocking fee)" msgstr "Frais minimums (par exemple frais de stock)" #: company/models.py:534 company/templates/company/supplier_part.html:167 #: stock/admin.py:101 stock/models.py:682 #: stock/templates/stock/item_base.html:243 -#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2016 +#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2011 msgid "Packaging" msgstr "Conditionnement" @@ -3196,7 +3219,7 @@ msgstr "Conditionnement de l'article" #: templates/js/translated/company.js:997 templates/js/translated/order.js:826 #: templates/js/translated/order.js:1253 templates/js/translated/order.js:1508 #: templates/js/translated/order.js:2317 templates/js/translated/order.js:2334 -#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1137 +#: templates/js/translated/part.js:1356 templates/js/translated/part.js:1408 msgid "Pack Quantity" msgstr "Nombre de paquet" @@ -3204,7 +3227,7 @@ msgstr "Nombre de paquet" msgid "Unit quantity supplied in a single pack" msgstr "Nombre d'unités fournies dans un seul paquet" -#: company/models.py:544 part/models.py:1863 +#: company/models.py:544 part/models.py:1869 msgid "multiple" msgstr "plusieurs" @@ -3216,8 +3239,8 @@ msgstr "Commande multiple" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:1118 templates/js/translated/build.js:1883 -#: templates/js/translated/build.js:2770 templates/js/translated/part.js:623 -#: templates/js/translated/part.js:626 +#: templates/js/translated/build.js:2770 templates/js/translated/part.js:626 +#: templates/js/translated/part.js:629 #: templates/js/translated/table_filters.js:206 msgid "Available" msgstr "Disponible" @@ -3300,7 +3323,7 @@ msgstr "" #: stock/templates/stock/item_base.html:399 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:429 templates/js/translated/order.js:2827 -#: templates/js/translated/stock.js:2607 +#: templates/js/translated/stock.js:2602 #: templates/js/translated/table_filters.js:447 msgid "Customer" msgstr "Client" @@ -3314,7 +3337,7 @@ msgid "Phone" msgstr "Téléphone" #: company/templates/company/company_base.html:206 -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:525 msgid "Remove Image" msgstr "" @@ -3323,19 +3346,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:209 -#: part/templates/part/part_base.html:514 +#: part/templates/part/part_base.html:528 #: templates/InvenTree/settings/user.html:87 #: templates/InvenTree/settings/user.html:149 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:238 -#: part/templates/part/part_base.html:543 +#: part/templates/part/part_base.html:557 msgid "Upload Image" msgstr "Charger une image" #: company/templates/company/company_base.html:253 -#: part/templates/part/part_base.html:598 +#: part/templates/part/part_base.html:612 msgid "Download Image" msgstr "Télécharger une image" @@ -3351,7 +3374,7 @@ msgstr "Créer une nouvelle pièce fournisseur" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:357 +#: part/templates/part/detail.html:380 msgid "New Supplier Part" msgstr "Nouvelle pièce fournisseur" @@ -3380,7 +3403,7 @@ msgstr "Pièces du fabricant" msgid "Create new manufacturer part" msgstr "Créer une nouvelle pièce de fabricant" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:387 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:410 msgid "New Manufacturer Part" msgstr "Nouvelle pièce de fabricant" @@ -3394,9 +3417,9 @@ msgstr "Stock fournisseur" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:35 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:35 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:200 -#: templates/InvenTree/settings/sidebar.html:49 +#: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:293 templates/navbar.html:50 #: users/models.py:42 msgid "Purchase Orders" @@ -3417,9 +3440,9 @@ msgstr "Nouvelle commande achat" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:39 +#: part/templates/part/detail.html:130 part/templates/part/part_sidebar.html:39 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:220 -#: templates/InvenTree/settings/sidebar.html:51 +#: templates/InvenTree/settings/sidebar.html:53 #: templates/js/translated/search.js:317 templates/navbar.html:61 #: users/models.py:43 msgid "Sales Orders" @@ -3451,7 +3474,7 @@ msgstr "Fabricants" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:221 -#: part/templates/part/detail.html:87 part/templates/part/part_base.html:85 +#: part/templates/part/detail.html:110 part/templates/part/part_base.html:85 msgid "Order part" msgstr "Article de la commande" @@ -3482,28 +3505,28 @@ msgid "Suppliers" msgstr "Fournisseurs" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:368 +#: part/templates/part/detail.html:391 msgid "Delete supplier parts" msgstr "Supprimer les pièces du fournisseur" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:369 part/templates/part/detail.html:399 -#: templates/js/translated/forms.js:455 templates/js/translated/helpers.js:38 -#: templates/js/translated/part.js:351 templates/js/translated/stock.js:188 -#: users/models.py:224 +#: part/templates/part/detail.html:392 part/templates/part/detail.html:422 +#: templates/js/translated/forms.js:458 templates/js/translated/helpers.js:38 +#: templates/js/translated/part.js:354 templates/js/translated/stock.js:187 +#: users/models.py:225 msgid "Delete" msgstr "Supprimer" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:184 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:207 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "Paramètres" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:189 +#: part/templates/part/detail.html:212 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:62 msgid "New Parameter" @@ -3514,7 +3537,7 @@ msgid "Delete parameters" msgstr "Supprimer les paramètres" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:825 +#: part/templates/part/detail.html:865 msgid "Add Parameter" msgstr "Ajouter un paramètre" @@ -3538,7 +3561,7 @@ msgstr "Articles en stock assignés" #: company/templates/company/supplier_part.html:24 stock/models.py:665 #: stock/templates/stock/item_base.html:236 #: templates/js/translated/company.js:946 templates/js/translated/order.js:1173 -#: templates/js/translated/stock.js:1974 +#: templates/js/translated/stock.js:1969 msgid "Supplier Part" msgstr "Pièce fournisseur" @@ -3578,7 +3601,7 @@ msgstr "" #: company/templates/company/supplier_part.html:56 #: company/templates/company/supplier_part.html:57 #: company/templates/company/supplier_part.html:222 -#: part/templates/part/detail.html:88 +#: part/templates/part/detail.html:111 msgid "Order Part" msgstr "Commander un composant" @@ -3630,7 +3653,7 @@ msgstr "" #: company/templates/company/supplier_part.html:204 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:198 -#: templates/js/translated/stock.js:467 +#: templates/js/translated/stock.js:466 msgid "New Stock Item" msgstr "" @@ -3662,10 +3685,10 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 -#: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/part.js:777 templates/js/translated/part.js:1378 -#: templates/js/translated/part.js:1534 templates/js/translated/stock.js:994 -#: templates/js/translated/stock.js:1799 templates/navbar.html:31 +#: templates/InvenTree/settings/sidebar.html:47 +#: templates/js/translated/part.js:1048 templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1805 templates/js/translated/stock.js:993 +#: templates/js/translated/stock.js:1794 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3680,7 +3703,7 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:29 #: part/templates/part/part_sidebar.html:30 -#: templates/InvenTree/settings/sidebar.html:35 +#: templates/InvenTree/settings/sidebar.html:37 msgid "Pricing" msgstr "Tarif" @@ -3692,7 +3715,7 @@ msgstr "Tarif" #: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:155 templates/js/translated/search.js:225 -#: templates/js/translated/stock.js:2484 users/models.py:40 +#: templates/js/translated/stock.js:2479 users/models.py:40 msgid "Stock Items" msgstr "Éléments en stock" @@ -3801,9 +3824,9 @@ msgstr "" #: stock/templates/stock/item_base.html:182 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:619 templates/js/translated/order.js:1174 -#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1012 -#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1954 -#: templates/js/translated/stock.js:2588 +#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1283 +#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1949 +#: templates/js/translated/stock.js:2583 msgid "Purchase Order" msgstr "Commande d’achat" @@ -3973,7 +3996,7 @@ msgstr "Pièce fournisseur" #: order/models.py:1046 order/templates/order/order_base.html:178 #: templates/js/translated/order.js:1679 templates/js/translated/order.js:2404 -#: templates/js/translated/part.js:1129 templates/js/translated/part.js:1161 +#: templates/js/translated/part.js:1400 templates/js/translated/part.js:1432 #: templates/js/translated/table_filters.js:358 msgid "Received" msgstr "Reçu" @@ -3984,7 +4007,7 @@ msgstr "Nombre d'éléments reçus" #: order/models.py:1054 stock/models.py:800 stock/serializers.py:173 #: stock/templates/stock/item_base.html:189 -#: templates/js/translated/stock.js:2005 +#: templates/js/translated/stock.js:2000 msgid "Purchase Price" msgstr "Prix d'achat" @@ -4350,18 +4373,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:9 #: part/templates/part/import_wizard/ajax_match_fields.html:9 +#: part/templates/part/import_wizard/match_fields.html:9 #: templates/patterns/wizard/match_fields.html:8 msgid "Missing selections for the following required columns" msgstr "" #: order/templates/order/order_wizard/match_fields.html:20 #: part/templates/part/import_wizard/ajax_match_fields.html:20 +#: part/templates/part/import_wizard/match_fields.html:20 #: templates/patterns/wizard/match_fields.html:19 msgid "Duplicate selections found, see below. Fix them then retry submitting." msgstr "" #: order/templates/order/order_wizard/match_fields.html:29 #: order/templates/order/order_wizard/match_parts.html:21 +#: part/templates/part/import_wizard/match_fields.html:29 #: part/templates/part/import_wizard/match_references.html:21 #: templates/patterns/wizard/match_fields.html:28 msgid "Submit Selections" @@ -4369,18 +4395,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:35 #: part/templates/part/import_wizard/ajax_match_fields.html:28 +#: part/templates/part/import_wizard/match_fields.html:35 #: templates/patterns/wizard/match_fields.html:34 msgid "File Fields" msgstr "" #: order/templates/order/order_wizard/match_fields.html:42 #: part/templates/part/import_wizard/ajax_match_fields.html:35 +#: part/templates/part/import_wizard/match_fields.html:42 #: templates/patterns/wizard/match_fields.html:41 msgid "Remove column" msgstr "Supprimer la colonne" #: order/templates/order/order_wizard/match_fields.html:60 #: part/templates/part/import_wizard/ajax_match_fields.html:53 +#: part/templates/part/import_wizard/match_fields.html:60 #: templates/patterns/wizard/match_fields.html:59 msgid "Duplicate selection" msgstr "Dupliquer la sélection" @@ -4389,12 +4418,13 @@ msgstr "Dupliquer la sélection" #: order/templates/order/order_wizard/match_parts.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: 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:102 templates/js/translated/build.js:485 #: templates/js/translated/build.js:641 templates/js/translated/build.js:2088 #: templates/js/translated/order.js:1122 templates/js/translated/order.js:1624 -#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:657 -#: templates/js/translated/stock.js:825 +#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:824 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "Supprimer la ligne" @@ -4429,6 +4459,7 @@ msgstr "Commande déjà traitée. Les fichiers ne peuvent pas être chargés." #: order/templates/order/order_wizard/po_upload.html:27 #: part/templates/part/import_wizard/ajax_part_upload.html:10 +#: part/templates/part/import_wizard/part_upload.html:26 #: templates/patterns/wizard/upload.html:13 #, python-format msgid "Step %(step)s of %(count)s" @@ -4567,12 +4598,12 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:19 part/admin.py:219 part/models.py:3262 stock/admin.py:84 +#: part/admin.py:19 part/admin.py:252 part/models.py:3340 stock/admin.py:84 #: templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "ID de composant" -#: part/admin.py:20 part/admin.py:221 part/models.py:3266 stock/admin.py:85 +#: part/admin.py:20 part/admin.py:254 part/models.py:3344 stock/admin.py:85 msgid "Part Name" msgstr "" @@ -4580,32 +4611,32 @@ msgstr "" msgid "Part Description" msgstr "" -#: part/admin.py:22 part/models.py:852 part/templates/part/part_base.html:272 -#: templates/js/translated/part.js:763 templates/js/translated/part.js:1491 -#: templates/js/translated/stock.js:1765 +#: part/admin.py:22 part/models.py:853 part/templates/part/part_base.html:272 +#: templates/js/translated/part.js:1034 templates/js/translated/part.js:1762 +#: templates/js/translated/stock.js:1760 msgid "IPN" msgstr "" -#: part/admin.py:23 part/models.py:860 part/templates/part/part_base.html:279 -#: report/models.py:171 templates/js/translated/part.js:768 +#: part/admin.py:23 part/models.py:861 part/templates/part/part_base.html:279 +#: report/models.py:171 templates/js/translated/part.js:1039 msgid "Revision" msgstr "Révision" -#: part/admin.py:24 part/admin.py:145 part/models.py:838 +#: part/admin.py:24 part/admin.py:178 part/models.py:839 #: part/templates/part/category.html:87 part/templates/part/part_base.html:300 msgid "Keywords" msgstr "" -#: part/admin.py:28 part/admin.py:139 +#: part/admin.py:28 part/admin.py:172 #: templates/js/translated/model_renderers.js:338 msgid "Category ID" msgstr "" -#: part/admin.py:29 part/admin.py:140 +#: part/admin.py:29 part/admin.py:173 msgid "Category Name" msgstr "" -#: part/admin.py:30 part/admin.py:144 +#: part/admin.py:30 part/admin.py:177 msgid "Default Location ID" msgstr "" @@ -4613,7 +4644,7 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:33 part/models.py:944 part/templates/part/part_base.html:206 +#: part/admin.py:33 part/models.py:945 part/templates/part/part_base.html:206 msgid "Minimum Stock" msgstr "" @@ -4625,8 +4656,8 @@ msgstr "" #: part/admin.py:48 part/bom.py:145 part/templates/part/part_base.html:213 #: templates/js/translated/bom.js:1156 templates/js/translated/build.js:1935 -#: templates/js/translated/part.js:613 templates/js/translated/part.js:633 -#: templates/js/translated/part.js:1381 templates/js/translated/part.js:1559 +#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 +#: templates/js/translated/part.js:1652 templates/js/translated/part.js:1830 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "En Commande" @@ -4642,115 +4673,115 @@ msgid "Allocated" msgstr "" #: part/admin.py:51 part/templates/part/part_base.html:244 -#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 -#: templates/js/translated/part.js:1385 templates/js/translated/part.js:1566 +#: templates/js/translated/part.js:619 templates/js/translated/part.js:639 +#: templates/js/translated/part.js:1656 templates/js/translated/part.js:1837 msgid "Building" msgstr "" -#: part/admin.py:52 part/models.py:2846 +#: part/admin.py:52 part/models.py:2864 msgid "Minimum Cost" msgstr "" -#: part/admin.py:53 part/models.py:2852 +#: part/admin.py:53 part/models.py:2870 msgid "Maximum Cost" msgstr "" -#: part/admin.py:142 part/admin.py:216 stock/admin.py:26 stock/admin.py:98 +#: part/admin.py:175 part/admin.py:249 stock/admin.py:26 stock/admin.py:98 msgid "Parent ID" msgstr "" -#: part/admin.py:143 part/admin.py:218 stock/admin.py:27 +#: part/admin.py:176 part/admin.py:251 stock/admin.py:27 msgid "Parent Name" msgstr "" -#: part/admin.py:146 part/templates/part/category.html:81 +#: part/admin.py:179 part/templates/part/category.html:81 #: part/templates/part/category.html:94 msgid "Category Path" msgstr "" -#: part/admin.py:149 part/models.py:382 part/templates/part/cat_link.html:3 +#: part/admin.py:182 part/models.py:383 part/templates/part/cat_link.html:3 #: part/templates/part/category.html:23 part/templates/part/category.html:134 #: part/templates/part/category.html:154 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:84 -#: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:2065 templates/js/translated/search.js:146 +#: templates/InvenTree/settings/sidebar.html:43 +#: templates/js/translated/part.js:2346 templates/js/translated/search.js:146 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "Composantes" -#: part/admin.py:211 +#: part/admin.py:244 msgid "BOM Level" msgstr "" -#: part/admin.py:213 +#: part/admin.py:246 msgid "BOM Item ID" msgstr "" -#: part/admin.py:217 +#: part/admin.py:250 msgid "Parent IPN" msgstr "" -#: part/admin.py:220 part/models.py:3270 +#: part/admin.py:253 part/models.py:3348 msgid "Part IPN" msgstr "" -#: part/admin.py:226 templates/js/translated/pricing.js:91 +#: part/admin.py:259 templates/js/translated/pricing.js:91 #: templates/js/translated/pricing.js:732 msgid "Minimum Price" msgstr "" -#: part/admin.py:227 templates/js/translated/pricing.js:86 +#: part/admin.py:260 templates/js/translated/pricing.js:86 #: templates/js/translated/pricing.js:740 msgid "Maximum Price" msgstr "" -#: part/api.py:536 +#: part/api.py:538 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:556 +#: part/api.py:558 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:574 +#: part/api.py:576 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:660 +#: part/api.py:662 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:818 +#: part/api.py:820 msgid "Valid" msgstr "" -#: part/api.py:819 +#: part/api.py:821 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:825 +#: part/api.py:827 msgid "This option must be selected" msgstr "" -#: part/api.py:1265 +#: part/api.py:1281 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1269 +#: part/api.py:1285 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1284 +#: part/api.py:1300 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1315 part/api.py:1319 part/api.py:1334 part/api.py:1338 +#: part/api.py:1331 part/api.py:1335 part/api.py:1350 part/api.py:1354 msgid "This field is required" msgstr "" -#: part/bom.py:142 part/models.py:116 part/models.py:887 -#: part/templates/part/category.html:109 part/templates/part/part_base.html:360 +#: part/bom.py:142 part/models.py:116 part/models.py:888 +#: part/templates/part/category.html:109 part/templates/part/part_base.html:374 msgid "Default Location" msgstr "" @@ -4801,7 +4832,7 @@ msgstr "" msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:159 part/models.py:3211 part/templates/part/category.html:16 +#: part/models.py:159 part/models.py:3289 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "Catégorie de composant" @@ -4812,423 +4843,459 @@ msgstr "Catégorie de composant" msgid "Part Categories" msgstr "Catégories de composants" -#: part/models.py:468 +#: part/models.py:469 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:538 part/models.py:550 +#: part/models.py:539 part/models.py:551 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:640 +#: part/models.py:641 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:771 +#: part/models.py:772 msgid "Duplicate IPN not allowed in part settings" msgstr "IPN dupliqué non autorisé dans les paramètres de la pièce" -#: part/models.py:776 +#: part/models.py:777 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:790 +#: part/models.py:791 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:808 part/models.py:3267 +#: part/models.py:809 part/models.py:3345 msgid "Part name" msgstr "" -#: part/models.py:815 +#: part/models.py:816 msgid "Is Template" msgstr "" -#: part/models.py:816 +#: part/models.py:817 msgid "Is this part a template part?" msgstr "" -#: part/models.py:826 +#: part/models.py:827 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:827 +#: part/models.py:828 msgid "Variant Of" msgstr "" -#: part/models.py:833 +#: part/models.py:834 msgid "Part description" msgstr "Description du composant" -#: part/models.py:839 +#: part/models.py:840 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:846 part/models.py:2966 part/models.py:3210 +#: part/models.py:847 part/models.py:3044 part/models.py:3288 #: part/templates/part/part_base.html:263 -#: templates/InvenTree/settings/settings.html:229 +#: templates/InvenTree/settings/settings.html:230 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1513 templates/js/translated/part.js:1770 +#: templates/js/translated/part.js:1784 templates/js/translated/part.js:2051 msgid "Category" msgstr "Catégorie" -#: part/models.py:847 +#: part/models.py:848 msgid "Part category" msgstr "Catégorie de la pièce" -#: part/models.py:853 +#: part/models.py:854 msgid "Internal Part Number" msgstr "" -#: part/models.py:859 +#: part/models.py:860 msgid "Part revision or version number" msgstr "" -#: part/models.py:885 +#: part/models.py:886 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:930 part/templates/part/part_base.html:369 +#: part/models.py:931 part/templates/part/part_base.html:383 msgid "Default Supplier" msgstr "" -#: part/models.py:931 +#: part/models.py:932 msgid "Default supplier part" msgstr "" -#: part/models.py:938 +#: part/models.py:939 msgid "Default Expiry" msgstr "" -#: part/models.py:939 +#: part/models.py:940 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:945 +#: part/models.py:946 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:952 +#: part/models.py:953 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:958 +#: part/models.py:959 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:964 +#: part/models.py:965 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:970 +#: part/models.py:971 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:975 +#: part/models.py:976 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:980 +#: part/models.py:981 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:985 +#: part/models.py:986 msgid "Is this part active?" msgstr "" -#: part/models.py:990 +#: part/models.py:991 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:992 +#: part/models.py:993 msgid "Part notes" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "BOM checksum" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:997 +#: part/models.py:998 msgid "BOM checked by" msgstr "" -#: part/models.py:999 +#: part/models.py:1000 msgid "BOM checked date" msgstr "" -#: part/models.py:1003 +#: part/models.py:1004 msgid "Creation User" msgstr "" -#: part/models.py:1863 +#: part/models.py:1010 part/templates/part/part_base.html:345 +#: stock/templates/stock/item_base.html:445 +#: templates/js/translated/part.js:1901 +msgid "Last Stocktake" +msgstr "" + +#: part/models.py:1869 msgid "Sell multiple" msgstr "Ventes multiples" -#: part/models.py:2763 +#: part/models.py:2781 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:2768 +#: part/models.py:2786 templates/js/translated/part.js:806 msgid "Updated" msgstr "" -#: part/models.py:2769 +#: part/models.py:2787 msgid "Timestamp of last pricing update" msgstr "" -#: part/models.py:2786 +#: part/models.py:2804 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:2787 +#: part/models.py:2805 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:2792 +#: part/models.py:2810 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:2793 +#: part/models.py:2811 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:2798 +#: part/models.py:2816 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:2799 +#: part/models.py:2817 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:2804 +#: part/models.py:2822 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:2805 +#: part/models.py:2823 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:2810 +#: part/models.py:2828 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:2811 +#: part/models.py:2829 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:2816 +#: part/models.py:2834 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:2817 +#: part/models.py:2835 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:2822 +#: part/models.py:2840 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:2823 +#: part/models.py:2841 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:2828 +#: part/models.py:2846 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:2829 +#: part/models.py:2847 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:2834 +#: part/models.py:2852 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:2835 +#: part/models.py:2853 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:2840 +#: part/models.py:2858 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:2841 +#: part/models.py:2859 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:2847 +#: part/models.py:2865 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:2853 +#: part/models.py:2871 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:2858 +#: part/models.py:2876 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:2859 +#: part/models.py:2877 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:2864 +#: part/models.py:2882 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:2865 +#: part/models.py:2883 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:2870 +#: part/models.py:2888 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:2871 +#: part/models.py:2889 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:2876 +#: part/models.py:2894 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:2877 +#: part/models.py:2895 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3013 +#: part/models.py:2913 +msgid "Part for stocktake" +msgstr "" + +#: part/models.py:2920 +msgid "Total available stock at time of stocktake" +msgstr "" + +#: part/models.py:2924 part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:63 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:2043 templates/js/translated/part.js:887 +#: templates/js/translated/pricing.js:537 +#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2511 +msgid "Date" +msgstr "" + +#: part/models.py:2925 +msgid "Date stocktake was performed" +msgstr "" + +#: part/models.py:2933 +msgid "Additional notes" +msgstr "" + +#: part/models.py:2941 +msgid "User who performed this stocktake" +msgstr "" + +#: part/models.py:3091 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3030 +#: part/models.py:3108 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:3050 templates/js/translated/part.js:2116 -#: templates/js/translated/stock.js:1379 +#: part/models.py:3128 templates/js/translated/part.js:2397 +#: templates/js/translated/stock.js:1378 msgid "Test Name" msgstr "Nom de test" -#: part/models.py:3051 +#: part/models.py:3129 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3056 +#: part/models.py:3134 msgid "Test Description" msgstr "" -#: part/models.py:3057 +#: part/models.py:3135 msgid "Enter description for this test" msgstr "" -#: part/models.py:3062 templates/js/translated/part.js:2125 +#: part/models.py:3140 templates/js/translated/part.js:2406 #: templates/js/translated/table_filters.js:322 msgid "Required" msgstr "Requis" -#: part/models.py:3063 +#: part/models.py:3141 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3068 templates/js/translated/part.js:2133 +#: part/models.py:3146 templates/js/translated/part.js:2414 msgid "Requires Value" msgstr "" -#: part/models.py:3069 +#: part/models.py:3147 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3074 templates/js/translated/part.js:2140 +#: part/models.py:3152 templates/js/translated/part.js:2421 msgid "Requires Attachment" msgstr "" -#: part/models.py:3075 +#: part/models.py:3153 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3116 +#: part/models.py:3194 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3124 +#: part/models.py:3202 msgid "Parameter Name" msgstr "" -#: part/models.py:3128 +#: part/models.py:3206 msgid "Parameter Units" msgstr "" -#: part/models.py:3133 +#: part/models.py:3211 msgid "Parameter description" msgstr "" -#: part/models.py:3166 +#: part/models.py:3244 msgid "Parent Part" msgstr "" -#: part/models.py:3168 part/models.py:3216 part/models.py:3217 -#: templates/InvenTree/settings/settings.html:224 +#: part/models.py:3246 part/models.py:3294 part/models.py:3295 +#: templates/InvenTree/settings/settings.html:225 msgid "Parameter Template" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Data" msgstr "Données" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Parameter Value" msgstr "" -#: part/models.py:3221 templates/InvenTree/settings/settings.html:233 +#: part/models.py:3299 templates/InvenTree/settings/settings.html:234 msgid "Default Value" msgstr "" -#: part/models.py:3222 +#: part/models.py:3300 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3259 +#: part/models.py:3337 msgid "Part ID or part name" msgstr "" -#: part/models.py:3263 +#: part/models.py:3341 msgid "Unique part ID value" msgstr "" -#: part/models.py:3271 +#: part/models.py:3349 msgid "Part IPN value" msgstr "" -#: part/models.py:3274 +#: part/models.py:3352 msgid "Level" msgstr "" -#: part/models.py:3275 +#: part/models.py:3353 msgid "BOM level" msgstr "" -#: part/models.py:3344 +#: part/models.py:3422 msgid "Select parent part" msgstr "" -#: part/models.py:3352 +#: part/models.py:3430 msgid "Sub part" msgstr "" -#: part/models.py:3353 +#: part/models.py:3431 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:3359 +#: part/models.py:3437 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:3363 part/templates/part/upload_bom.html:58 +#: part/models.py:3441 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:933 templates/js/translated/bom.js:986 #: templates/js/translated/build.js:1868 #: templates/js/translated/table_filters.js:84 @@ -5236,189 +5303,189 @@ msgstr "" msgid "Optional" msgstr "" -#: part/models.py:3364 +#: part/models.py:3442 msgid "This BOM item is optional" msgstr "" -#: part/models.py:3369 templates/js/translated/bom.js:929 +#: part/models.py:3447 templates/js/translated/bom.js:929 #: templates/js/translated/bom.js:995 templates/js/translated/build.js:1859 #: templates/js/translated/table_filters.js:88 msgid "Consumable" msgstr "" -#: part/models.py:3370 +#: part/models.py:3448 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:3374 part/templates/part/upload_bom.html:55 +#: part/models.py:3452 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "Surplus" -#: part/models.py:3375 +#: part/models.py:3453 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:3378 +#: part/models.py:3456 msgid "BOM item reference" msgstr "" -#: part/models.py:3381 +#: part/models.py:3459 msgid "BOM item notes" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "Checksum" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "BOM line checksum" msgstr "" -#: part/models.py:3387 part/templates/part/upload_bom.html:57 +#: part/models.py:3465 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1012 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:108 msgid "Inherited" msgstr "" -#: part/models.py:3388 +#: part/models.py:3466 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:3393 part/templates/part/upload_bom.html:56 +#: part/models.py:3471 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1004 msgid "Allow Variants" msgstr "" -#: part/models.py:3394 +#: part/models.py:3472 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:3480 stock/models.py:558 +#: part/models.py:3558 stock/models.py:558 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:3489 part/models.py:3491 +#: part/models.py:3567 part/models.py:3569 msgid "Sub part must be specified" msgstr "" -#: part/models.py:3618 +#: part/models.py:3696 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:3639 +#: part/models.py:3717 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:3652 +#: part/models.py:3730 msgid "Parent BOM item" msgstr "" -#: part/models.py:3660 +#: part/models.py:3738 msgid "Substitute part" msgstr "" -#: part/models.py:3675 +#: part/models.py:3753 msgid "Part 1" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Part 2" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Select Related Part" msgstr "" -#: part/models.py:3697 +#: part/models.py:3775 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:3701 +#: part/models.py:3779 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:155 part/serializers.py:183 stock/serializers.py:183 +#: part/serializers.py:157 part/serializers.py:185 stock/serializers.py:183 msgid "Purchase currency of this stock item" msgstr "Devise d'achat de l'item" -#: part/serializers.py:543 +#: part/serializers.py:584 msgid "Update" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:585 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:854 +#: part/serializers.py:895 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:862 +#: part/serializers.py:903 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:863 +#: part/serializers.py:904 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:868 +#: part/serializers.py:909 msgid "Include Inherited" msgstr "" -#: part/serializers.py:869 +#: part/serializers.py:910 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:874 +#: part/serializers.py:915 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:875 +#: part/serializers.py:916 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:921 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:881 +#: part/serializers.py:922 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:962 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:922 +#: part/serializers.py:963 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:952 +#: part/serializers.py:993 msgid "No part column specified" msgstr "" -#: part/serializers.py:995 +#: part/serializers.py:1036 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:998 +#: part/serializers.py:1039 msgid "No matching part found" msgstr "" -#: part/serializers.py:1001 +#: part/serializers.py:1042 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1010 +#: part/serializers.py:1051 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1059 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1039 +#: part/serializers.py:1080 msgid "At least one BOM item is required" msgstr "" @@ -5450,7 +5517,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:267 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:290 msgid "BOM actions" msgstr "" @@ -5507,8 +5574,8 @@ msgstr "" msgid "New Part" msgstr "" -#: part/templates/part/category.html:169 part/templates/part/detail.html:366 -#: part/templates/part/detail.html:397 +#: part/templates/part/category.html:169 part/templates/part/detail.html:389 +#: part/templates/part/detail.html:420 msgid "Options" msgstr "" @@ -5556,7 +5623,7 @@ msgstr "Composant créé avec succès" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:404 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:407 msgid "Duplicate Part" msgstr "" @@ -5593,118 +5660,128 @@ msgstr "" msgid "Refresh" msgstr "Actualiser" -#: part/templates/part/detail.html:59 +#: part/templates/part/detail.html:65 +msgid "Add stocktake information" +msgstr "" + +#: part/templates/part/detail.html:66 part/templates/part/part_sidebar.html:49 +#: stock/admin.py:107 templates/js/translated/stock.js:1905 +msgid "Stocktake" +msgstr "Prise d'inventaire" + +#: part/templates/part/detail.html:82 msgid "Part Test Templates" msgstr "" -#: part/templates/part/detail.html:64 +#: part/templates/part/detail.html:87 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:144 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:141 +#: part/templates/part/detail.html:164 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:156 +#: part/templates/part/detail.html:179 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:160 +#: part/templates/part/detail.html:183 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:161 +#: part/templates/part/detail.html:184 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:188 +#: part/templates/part/detail.html:211 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:225 part/templates/part/part_sidebar.html:52 +#: part/templates/part/detail.html:248 part/templates/part/part_sidebar.html:57 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:229 part/templates/part/detail.html:230 +#: part/templates/part/detail.html:252 part/templates/part/detail.html:253 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:250 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:273 part/templates/part/part_sidebar.html:17 +#: report/templates/report/inventree_bill_of_materials_report.html:100 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:255 +#: part/templates/part/detail.html:278 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:259 templates/js/translated/bom.js:309 +#: part/templates/part/detail.html:282 templates/js/translated/bom.js:309 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:261 +#: part/templates/part/detail.html:284 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:271 +#: part/templates/part/detail.html:294 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:272 templates/js/translated/part.js:276 +#: part/templates/part/detail.html:295 templates/js/translated/part.js:279 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:273 +#: part/templates/part/detail.html:296 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:278 part/templates/part/detail.html:279 +#: part/templates/part/detail.html:301 part/templates/part/detail.html:302 #: templates/js/translated/bom.js:1268 templates/js/translated/bom.js:1269 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:292 +#: part/templates/part/detail.html:315 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:310 +#: part/templates/part/detail.html:333 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:337 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:360 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:353 +#: part/templates/part/detail.html:376 msgid "Part Suppliers" msgstr "" -#: part/templates/part/detail.html:383 +#: part/templates/part/detail.html:406 msgid "Part Manufacturers" msgstr "Fabricants de composants" -#: part/templates/part/detail.html:399 +#: part/templates/part/detail.html:422 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:696 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:704 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:796 msgid "Add Test Result Template" msgstr "" #: part/templates/part/import_wizard/ajax_part_upload.html:29 #: part/templates/part/import_wizard/part_upload.html:14 -msgid "Unsuffitient privileges." +msgid "Insufficient privileges." msgstr "" #: part/templates/part/import_wizard/part_upload.html:8 @@ -5715,6 +5792,34 @@ msgstr "" msgid "Import Parts from File" msgstr "" +#: part/templates/part/import_wizard/part_upload.html:31 +msgid "Requirements for part import" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "The part import file must contain the required named columns as provided in the " +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:89 +msgid "Download Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:92 +#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 +#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 +msgid "Format" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:93 +#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 +#: templates/js/translated/order.js:999 +msgid "Select file format" +msgstr "Sélectionner un format de fichier" + #: part/templates/part/part_app_base.html:12 msgid "Part List" msgstr "Liste des composants" @@ -5804,12 +5909,12 @@ msgstr "" #: templates/js/translated/company.js:660 #: templates/js/translated/company.js:921 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:677 templates/js/translated/part.js:755 +#: templates/js/translated/part.js:680 templates/js/translated/part.js:1026 msgid "Inactive" msgstr "" #: part/templates/part/part_base.html:165 -#: part/templates/part/part_base.html:666 +#: part/templates/part/part_base.html:680 msgid "Show Part Details" msgstr "" @@ -5837,38 +5942,38 @@ msgid "Minimum stock level" msgstr "" #: part/templates/part/part_base.html:330 templates/js/translated/bom.js:1032 -#: templates/js/translated/part.js:798 templates/js/translated/part.js:1604 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:1875 #: templates/js/translated/pricing.js:124 #: templates/js/translated/pricing.js:762 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:345 +#: part/templates/part/part_base.html:359 msgid "Latest Serial Number" msgstr "Dernier numéro de série" -#: part/templates/part/part_base.html:349 +#: part/templates/part/part_base.html:363 #: stock/templates/stock/item_base.html:331 msgid "Search for serial number" msgstr "Rechercher un numéro de série" -#: part/templates/part/part_base.html:449 +#: part/templates/part/part_base.html:463 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:495 +#: part/templates/part/part_base.html:509 msgid "Calculate" msgstr "Calculer" -#: part/templates/part/part_base.html:512 +#: part/templates/part/part_base.html:526 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:564 +#: part/templates/part/part_base.html:578 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:660 +#: part/templates/part/part_base.html:674 msgid "Hide Part Details" msgstr "" @@ -5920,15 +6025,6 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" -#: part/templates/part/part_scheduling.html:13 -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:63 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:2043 templates/js/translated/pricing.js:537 -#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2516 -msgid "Date" -msgstr "" - #: part/templates/part/part_scheduling.html:14 msgid "Scheduled Quantity" msgstr "" @@ -5941,7 +6037,7 @@ msgstr "" msgid "Scheduling" msgstr "" -#: part/templates/part/part_sidebar.html:48 +#: part/templates/part/part_sidebar.html:53 msgid "Test Templates" msgstr "Tester le modèle" @@ -5960,7 +6056,7 @@ msgstr "" #: part/templates/part/prices.html:25 stock/admin.py:106 #: stock/templates/stock/item_base.html:440 #: templates/js/translated/company.js:1039 -#: templates/js/translated/stock.js:1940 +#: templates/js/translated/stock.js:1935 msgid "Last Updated" msgstr "" @@ -6023,8 +6119,8 @@ msgstr "" msgid "Add Sell Price Break" msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:639 -#: templates/js/translated/part.js:1373 templates/js/translated/part.js:1375 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:1644 templates/js/translated/part.js:1646 msgid "No Stock" msgstr "" @@ -6087,27 +6183,32 @@ msgstr "" msgid "{title} v{version}" msgstr "" -#: part/views.py:109 +#: part/views.py:111 msgid "Match References" msgstr "" -#: part/views.py:354 +#: part/views.py:239 +#, python-brace-format +msgid "Can't import part {name} because there is no category assigned" +msgstr "" + +#: part/views.py:378 msgid "Part QR Code" msgstr "" -#: part/views.py:372 +#: part/views.py:396 msgid "Select Part Image" msgstr "" -#: part/views.py:398 +#: part/views.py:422 msgid "Updated part image" msgstr "" -#: part/views.py:401 +#: part/views.py:425 msgid "Part image not found" msgstr "" -#: part/views.py:493 +#: part/views.py:517 msgid "Part Pricing" msgstr "" @@ -6156,28 +6257,48 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:29 -#: plugin/builtin/integration/core_notifications.py:31 +#: plugin/builtin/integration/core_notifications.py:33 msgid "InvenTree contributors" msgstr "" -#: plugin/builtin/integration/core_notifications.py:30 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:32 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notificaton methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:37 -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:80 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:38 -#: plugin/builtin/integration/core_notifications.py:57 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:81 msgid "Allow sending of emails for event notifications" msgstr "" +#: plugin/builtin/integration/core_notifications.py:45 +msgid "Enable slack notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:46 +msgid "Allow sending of slack channel messages for event notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:51 +msgid "Slack incoming webhook url" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:52 +msgid "URL that is used to send messages to a slack channel" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:162 +msgid "Open link" +msgstr "" + #: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" @@ -6409,6 +6530,10 @@ msgstr "" msgid "Asset file description" msgstr "" +#: report/templates/report/inventree_bill_of_materials_report.html:133 +msgid "Materials needed" +msgstr "" + #: report/templates/report/inventree_build_order_base.html:146 msgid "Required For" msgstr "Requis pour" @@ -6427,7 +6552,7 @@ msgstr "" #: templates/js/translated/build.js:1244 templates/js/translated/build.js:1745 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:121 templates/js/translated/order.js:3611 -#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:522 +#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:521 msgid "Serial Number" msgstr "Numéro de série" @@ -6459,8 +6584,9 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: stock/admin.py:87 templates/js/translated/stock.js:642 -#: templates/js/translated/stock.js:812 templates/js/translated/stock.js:2765 +#: stock/admin.py:87 templates/js/translated/part.js:749 +#: templates/js/translated/stock.js:641 templates/js/translated/stock.js:811 +#: templates/js/translated/stock.js:2760 msgid "Serial" msgstr "" @@ -6515,13 +6641,9 @@ msgstr "" msgid "Purchase Order ID" msgstr "" -#: stock/admin.py:107 templates/js/translated/stock.js:1910 -msgid "Stocktake" -msgstr "Prise d'inventaire" - #: stock/admin.py:108 stock/models.py:764 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/stock.js:1924 +#: templates/js/translated/stock.js:1919 msgid "Expiry Date" msgstr "" @@ -6936,7 +7058,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2912 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2907 msgid "Install Stock Item" msgstr "" @@ -6944,7 +7066,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1561 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1560 msgid "Add Test Result" msgstr "" @@ -7117,10 +7239,6 @@ msgstr "" msgid "Stale" msgstr "" -#: stock/templates/stock/item_base.html:445 -msgid "Last Stocktake" -msgstr "" - #: stock/templates/stock/item_base.html:449 msgid "No stocktake performed" msgstr "" @@ -7394,7 +7512,8 @@ msgstr "" #: templates/InvenTree/notifications/notifications.html:10 #: templates/InvenTree/notifications/sidebar.html:5 -#: templates/InvenTree/settings/sidebar.html:17 templates/notifications.html:5 +#: templates/InvenTree/settings/sidebar.html:17 +#: templates/InvenTree/settings/sidebar.html:35 templates/notifications.html:5 msgid "Notifications" msgstr "" @@ -7475,6 +7594,14 @@ msgstr "" msgid "Open in new tab" msgstr "" +#: templates/InvenTree/settings/notifications.html:9 +msgid "Global Notification Settings" +msgstr "" + +#: templates/InvenTree/settings/notifications.html:18 +msgid "Slug" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -7492,7 +7619,7 @@ msgid "Part Parameter Templates" msgstr "" #: templates/InvenTree/settings/plugin.html:10 -#: templates/InvenTree/settings/sidebar.html:55 +#: templates/InvenTree/settings/sidebar.html:57 msgid "Plugin Settings" msgstr "" @@ -7501,7 +7628,7 @@ msgid "Changing the settings below require you to immediately restart the server msgstr "" #: templates/InvenTree/settings/plugin.html:38 -#: templates/InvenTree/settings/sidebar.html:57 +#: templates/InvenTree/settings/sidebar.html:59 msgid "Plugins" msgstr "" @@ -7669,67 +7796,67 @@ msgstr "Aucune valeur définie" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:117 +#: templates/InvenTree/settings/settings.html:118 msgid "Edit Plugin Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:119 +#: templates/InvenTree/settings/settings.html:120 msgid "Edit Notification Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:122 +#: templates/InvenTree/settings/settings.html:123 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:124 +#: templates/InvenTree/settings/settings.html:125 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:214 +#: templates/InvenTree/settings/settings.html:215 msgid "No category parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:236 -#: templates/InvenTree/settings/settings.html:361 -msgid "Edit Template" -msgstr "" - #: templates/InvenTree/settings/settings.html:237 #: templates/InvenTree/settings/settings.html:362 +msgid "Edit Template" +msgstr "" + +#: templates/InvenTree/settings/settings.html:238 +#: templates/InvenTree/settings/settings.html:363 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:277 +#: templates/InvenTree/settings/settings.html:278 msgid "Create Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:322 +#: templates/InvenTree/settings/settings.html:323 msgid "Delete Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:334 +#: templates/InvenTree/settings/settings.html:335 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:338 +#: templates/InvenTree/settings/settings.html:339 #: templates/js/translated/news.js:29 #: templates/js/translated/notification.js:36 msgid "ID" msgstr "" -#: templates/InvenTree/settings/settings.html:380 +#: templates/InvenTree/settings/settings.html:381 msgid "Create Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:399 +#: templates/InvenTree/settings/settings.html:400 msgid "Edit Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:413 +#: templates/InvenTree/settings/settings.html:414 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/InvenTree/settings/settings.html:421 +#: templates/InvenTree/settings/settings.html:422 msgid "Delete Part Parameter Template" msgstr "" @@ -7758,12 +7885,12 @@ msgid "Search Settings" msgstr "" #: templates/InvenTree/settings/sidebar.html:19 -#: templates/InvenTree/settings/sidebar.html:37 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Label Printing" msgstr "" #: templates/InvenTree/settings/sidebar.html:21 -#: templates/InvenTree/settings/sidebar.html:39 +#: templates/InvenTree/settings/sidebar.html:41 msgid "Reporting" msgstr "Rapports" @@ -7775,7 +7902,7 @@ msgstr "" msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:43 +#: templates/InvenTree/settings/sidebar.html:45 msgid "Categories" msgstr "" @@ -7945,64 +8072,64 @@ msgstr "" msgid "Do you really want to remove the selected email address?" msgstr "" -#: templates/InvenTree/settings/user_display.html:28 +#: templates/InvenTree/settings/user_display.html:29 msgid "Theme Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:38 +#: templates/InvenTree/settings/user_display.html:39 msgid "Select theme" msgstr "Sélectionner un thème" -#: templates/InvenTree/settings/user_display.html:49 +#: templates/InvenTree/settings/user_display.html:50 msgid "Set Theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:57 +#: templates/InvenTree/settings/user_display.html:58 msgid "Language Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:66 +#: templates/InvenTree/settings/user_display.html:67 msgid "Select language" msgstr "" -#: templates/InvenTree/settings/user_display.html:82 +#: templates/InvenTree/settings/user_display.html:83 #, python-format msgid "%(lang_translated)s%% translated" msgstr "" -#: templates/InvenTree/settings/user_display.html:84 +#: templates/InvenTree/settings/user_display.html:85 msgid "No translations available" msgstr "" -#: templates/InvenTree/settings/user_display.html:91 +#: templates/InvenTree/settings/user_display.html:92 msgid "Set Language" msgstr "" -#: templates/InvenTree/settings/user_display.html:94 +#: templates/InvenTree/settings/user_display.html:95 msgid "Some languages are not complete" msgstr "" -#: templates/InvenTree/settings/user_display.html:96 +#: templates/InvenTree/settings/user_display.html:97 msgid "Show only sufficent" msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "and hidden." msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "Show them too" msgstr "" -#: templates/InvenTree/settings/user_display.html:105 +#: templates/InvenTree/settings/user_display.html:106 msgid "Help the translation efforts!" msgstr "" -#: templates/InvenTree/settings/user_display.html:106 +#: templates/InvenTree/settings/user_display.html:107 msgid "Native language translation of the web application is community contributed via crowdin. Contributions are welcomed and encouraged." msgstr "" -#: templates/InvenTree/settings/user_display.html:107 +#: templates/InvenTree/settings/user_display.html:108 msgid "InvenTree Translation Project" msgstr "" @@ -8080,7 +8207,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:646 +#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:649 msgid "Confirm" msgstr "Confirmer" @@ -8313,7 +8440,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 -#: templates/js/translated/part.js:2445 +#: templates/js/translated/part.js:2726 msgid "Minimum Quantity" msgstr "" @@ -8466,7 +8593,7 @@ msgstr "" msgid "Unlink" msgstr "Délier" -#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1089 +#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1088 msgid "Remove stock item" msgstr "Supprimer l'article de stock" @@ -8548,16 +8675,6 @@ msgstr "" msgid "Download BOM Template" msgstr "Télécharger le template de la BOM" -#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 -#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 -msgid "Format" -msgstr "" - -#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 -#: templates/js/translated/order.js:999 -msgid "Select file format" -msgstr "Sélectionner un format de fichier" - #: templates/js/translated/bom.js:320 msgid "Multi Level BOM" msgstr "" @@ -8688,7 +8805,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:1145 templates/js/translated/build.js:1923 -#: templates/js/translated/part.js:790 templates/js/translated/part.js:1572 +#: templates/js/translated/part.js:1061 templates/js/translated/part.js:1843 msgid "Includes variant stock" msgstr "" @@ -8773,13 +8890,13 @@ msgstr "" msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:317 templates/js/translated/stock.js:95 -#: templates/js/translated/stock.js:237 +#: templates/js/translated/build.js:317 templates/js/translated/stock.js:94 +#: templates/js/translated/stock.js:236 msgid "Next available serial number" msgstr "Prochain numéro de série disponible" -#: templates/js/translated/build.js:319 templates/js/translated/stock.js:97 -#: templates/js/translated/stock.js:239 +#: templates/js/translated/build.js:319 templates/js/translated/stock.js:96 +#: templates/js/translated/stock.js:238 msgid "Latest serial number" msgstr "Dernier numéro de série" @@ -8987,9 +9104,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1466 -#: templates/js/translated/part.js:2003 templates/js/translated/stock.js:1725 -#: templates/js/translated/stock.js:2428 +#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1737 +#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1724 +#: templates/js/translated/stock.js:2423 msgid "Select" msgstr "" @@ -9001,7 +9118,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2695 +#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2690 msgid "No user information" msgstr "Pas d'informations sur l'utilisateur" @@ -9074,34 +9191,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:652 -#: templates/js/translated/company.js:913 templates/js/translated/part.js:661 -#: templates/js/translated/part.js:747 +#: templates/js/translated/company.js:913 templates/js/translated/part.js:664 +#: templates/js/translated/part.js:1018 msgid "Template part" msgstr "" #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:917 templates/js/translated/part.js:665 -#: templates/js/translated/part.js:751 +#: templates/js/translated/company.js:917 templates/js/translated/part.js:668 +#: templates/js/translated/part.js:1022 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:784 templates/js/translated/part.js:870 +#: templates/js/translated/company.js:784 templates/js/translated/part.js:1141 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:821 templates/js/translated/part.js:912 +#: templates/js/translated/company.js:821 templates/js/translated/part.js:1183 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:822 templates/js/translated/part.js:913 +#: templates/js/translated/company.js:822 templates/js/translated/part.js:1184 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:841 templates/js/translated/part.js:930 +#: templates/js/translated/company.js:841 templates/js/translated/part.js:1201 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:852 templates/js/translated/part.js:942 +#: templates/js/translated/company.js:852 templates/js/translated/part.js:1213 msgid "Delete Parameter" msgstr "" @@ -9181,61 +9298,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:369 templates/js/translated/forms.js:384 -#: templates/js/translated/forms.js:398 templates/js/translated/forms.js:412 +#: templates/js/translated/forms.js:372 templates/js/translated/forms.js:387 +#: templates/js/translated/forms.js:401 templates/js/translated/forms.js:415 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:371 +#: templates/js/translated/forms.js:374 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:386 +#: templates/js/translated/forms.js:389 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:400 +#: templates/js/translated/forms.js:403 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:414 +#: templates/js/translated/forms.js:417 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:672 +#: templates/js/translated/forms.js:675 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:773 +#: templates/js/translated/forms.js:776 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1266 templates/modals.html:19 +#: templates/js/translated/forms.js:1269 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1703 +#: templates/js/translated/forms.js:1706 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1919 templates/search.html:29 +#: templates/js/translated/forms.js:1922 templates/search.html:29 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2172 +#: templates/js/translated/forms.js:2175 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:2640 +#: templates/js/translated/forms.js:2643 msgid "Select Columns" msgstr "" @@ -9256,7 +9373,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1113 +#: templates/js/translated/stock.js:1112 msgid "Select Stock Items" msgstr "" @@ -9590,7 +9707,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2184 +#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2179 msgid "Stock Status" msgstr "" @@ -9614,7 +9731,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1982 templates/js/translated/part.js:983 +#: templates/js/translated/order.js:1982 templates/js/translated/part.js:1254 msgid "No purchase orders found" msgstr "" @@ -9647,8 +9764,8 @@ msgstr "" msgid "Total" msgstr "" -#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1085 -#: templates/js/translated/part.js:1137 +#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1356 +#: templates/js/translated/part.js:1408 msgid "Total Quantity" msgstr "" @@ -9666,11 +9783,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2388 templates/js/translated/order.js:3900 -#: templates/js/translated/part.js:1121 +#: templates/js/translated/part.js:1392 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1166 +#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1437 msgid "Receive line item" msgstr "" @@ -9791,7 +9908,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3623 templates/js/translated/order.js:3712 -#: templates/js/translated/stock.js:1641 +#: templates/js/translated/stock.js:1640 msgid "Shipped to customer" msgstr "Livré au client" @@ -9835,334 +9952,358 @@ msgstr "" msgid "No matching lines" msgstr "" -#: templates/js/translated/part.js:52 +#: templates/js/translated/part.js:55 msgid "Part Attributes" msgstr "Attributs de la pièce" -#: templates/js/translated/part.js:56 +#: templates/js/translated/part.js:59 msgid "Part Creation Options" msgstr "Options de création de pièce" -#: templates/js/translated/part.js:60 +#: templates/js/translated/part.js:63 msgid "Part Duplication Options" msgstr "Options de duplication de pièces" -#: templates/js/translated/part.js:64 +#: templates/js/translated/part.js:67 msgid "Supplier Options" msgstr "Options de fournisseur" -#: templates/js/translated/part.js:78 +#: templates/js/translated/part.js:81 msgid "Add Part Category" msgstr "Ajouter une catégorie de pièce" -#: templates/js/translated/part.js:168 +#: templates/js/translated/part.js:171 msgid "Create Initial Stock" msgstr "Créer un stock initial" -#: templates/js/translated/part.js:169 +#: templates/js/translated/part.js:172 msgid "Create an initial stock item for this part" msgstr "" -#: templates/js/translated/part.js:176 +#: templates/js/translated/part.js:179 msgid "Initial Stock Quantity" msgstr "" -#: templates/js/translated/part.js:177 +#: templates/js/translated/part.js:180 msgid "Specify initial stock quantity for this part" msgstr "" -#: templates/js/translated/part.js:184 +#: templates/js/translated/part.js:187 msgid "Select destination stock location" msgstr "" -#: templates/js/translated/part.js:202 +#: templates/js/translated/part.js:205 msgid "Copy Category Parameters" msgstr "" -#: templates/js/translated/part.js:203 +#: templates/js/translated/part.js:206 msgid "Copy parameter templates from selected part category" msgstr "" -#: templates/js/translated/part.js:211 +#: templates/js/translated/part.js:214 msgid "Add Supplier Data" msgstr "" -#: templates/js/translated/part.js:212 +#: templates/js/translated/part.js:215 msgid "Create initial supplier data for this part" msgstr "" -#: templates/js/translated/part.js:268 +#: templates/js/translated/part.js:271 msgid "Copy Image" msgstr "Copier l'image" -#: templates/js/translated/part.js:269 +#: templates/js/translated/part.js:272 msgid "Copy image from original part" msgstr "" -#: templates/js/translated/part.js:277 +#: templates/js/translated/part.js:280 msgid "Copy bill of materials from original part" msgstr "" -#: templates/js/translated/part.js:284 +#: templates/js/translated/part.js:287 msgid "Copy Parameters" msgstr "Copier les paramètres" -#: templates/js/translated/part.js:285 +#: templates/js/translated/part.js:288 msgid "Copy parameter data from original part" msgstr "" -#: templates/js/translated/part.js:298 +#: templates/js/translated/part.js:301 msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:313 templates/js/translated/stock.js:122 +#: templates/js/translated/part.js:316 templates/js/translated/stock.js:121 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:329 +#: templates/js/translated/part.js:332 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:342 +#: templates/js/translated/part.js:345 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:347 +#: templates/js/translated/part.js:350 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:359 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:360 +#: templates/js/translated/part.js:363 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:368 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:394 +#: templates/js/translated/part.js:397 msgid "Edit Part" msgstr "Modifier la pièce" -#: templates/js/translated/part.js:396 +#: templates/js/translated/part.js:399 msgid "Part edited" msgstr "Pièce modifiée" -#: templates/js/translated/part.js:407 +#: templates/js/translated/part.js:410 msgid "Create Part Variant" msgstr "Créer une variante de pièce" -#: templates/js/translated/part.js:459 +#: templates/js/translated/part.js:462 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:460 +#: templates/js/translated/part.js:463 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:477 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:476 +#: templates/js/translated/part.js:479 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:477 +#: templates/js/translated/part.js:480 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:478 +#: templates/js/translated/part.js:481 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:485 +#: templates/js/translated/part.js:488 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:521 +#: templates/js/translated/part.js:524 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:523 +#: templates/js/translated/part.js:526 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:531 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:530 +#: templates/js/translated/part.js:533 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:547 +#: templates/js/translated/part.js:550 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:560 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:560 +#: templates/js/translated/part.js:563 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:585 +#: templates/js/translated/part.js:588 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1554 +#: templates/js/translated/part.js:612 templates/js/translated/part.js:1825 #: templates/js/translated/table_filters.js:488 msgid "Low stock" msgstr "Stock bas" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:622 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:653 templates/js/translated/part.js:739 +#: templates/js/translated/part.js:656 templates/js/translated/part.js:1010 msgid "Trackable part" msgstr "Pièce traçable" -#: templates/js/translated/part.js:657 templates/js/translated/part.js:743 +#: templates/js/translated/part.js:660 templates/js/translated/part.js:1014 msgid "Virtual part" msgstr "Pièce virtuelle" -#: templates/js/translated/part.js:669 +#: templates/js/translated/part.js:672 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:673 +#: templates/js/translated/part.js:676 msgid "Salable part" msgstr "Pièce vendable" -#: templates/js/translated/part.js:815 +#: templates/js/translated/part.js:761 +msgid "Stock item has not been checked recently" +msgstr "" + +#: templates/js/translated/part.js:769 +msgid "Update item" +msgstr "" + +#: templates/js/translated/part.js:770 +msgid "Delete item" +msgstr "" + +#: templates/js/translated/part.js:871 +msgid "No stocktake information available" +msgstr "" + +#: templates/js/translated/part.js:910 templates/js/translated/part.js:933 +msgid "Edit Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:914 templates/js/translated/part.js:945 +msgid "Delete Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:1086 msgid "No variants found" msgstr "Aucune variante trouvée" -#: templates/js/translated/part.js:1236 +#: templates/js/translated/part.js:1507 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1260 +#: templates/js/translated/part.js:1531 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1327 templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1598 templates/js/translated/part.js:1936 msgid "No parts found" msgstr "Aucune pièce trouvée" -#: templates/js/translated/part.js:1521 +#: templates/js/translated/part.js:1792 msgid "No category" msgstr "Aucune catégorie" -#: templates/js/translated/part.js:1552 +#: templates/js/translated/part.js:1823 msgid "No stock" msgstr "" -#: templates/js/translated/part.js:1576 +#: templates/js/translated/part.js:1847 msgid "Allocated to build orders" msgstr "" -#: templates/js/translated/part.js:1580 +#: templates/js/translated/part.js:1851 msgid "Allocated to sales orders" msgstr "" -#: templates/js/translated/part.js:1679 templates/js/translated/part.js:1922 -#: templates/js/translated/stock.js:2387 +#: templates/js/translated/part.js:1960 templates/js/translated/part.js:2203 +#: templates/js/translated/stock.js:2382 msgid "Display as list" msgstr "Afficher sous forme de liste" -#: templates/js/translated/part.js:1695 +#: templates/js/translated/part.js:1976 msgid "Display as grid" msgstr "Afficher sous forme de grille" -#: templates/js/translated/part.js:1761 +#: templates/js/translated/part.js:2042 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1766 +#: templates/js/translated/part.js:2047 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1771 +#: templates/js/translated/part.js:2052 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1784 +#: templates/js/translated/part.js:2065 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1942 templates/js/translated/stock.js:2407 +#: templates/js/translated/part.js:2223 templates/js/translated/stock.js:2402 msgid "Display as tree" msgstr "Afficher sous forme d'arborescence" -#: templates/js/translated/part.js:2022 +#: templates/js/translated/part.js:2303 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2038 +#: templates/js/translated/part.js:2319 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2383 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2153 templates/js/translated/stock.js:1338 +#: templates/js/translated/part.js:2434 templates/js/translated/stock.js:1337 msgid "Edit test result" msgstr "Modifier le résultat du test" -#: templates/js/translated/part.js:2154 templates/js/translated/stock.js:1339 -#: templates/js/translated/stock.js:1599 +#: templates/js/translated/part.js:2435 templates/js/translated/stock.js:1338 +#: templates/js/translated/stock.js:1598 msgid "Delete test result" msgstr "Supprimer le résultat du test" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2441 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2182 +#: templates/js/translated/part.js:2463 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2196 +#: templates/js/translated/part.js:2477 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2277 templates/js/translated/part.js:2278 +#: templates/js/translated/part.js:2558 templates/js/translated/part.js:2559 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2280 +#: templates/js/translated/part.js:2561 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:2286 +#: templates/js/translated/part.js:2567 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:2336 +#: templates/js/translated/part.js:2617 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2623 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:2438 +#: templates/js/translated/part.js:2719 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2454 +#: templates/js/translated/part.js:2735 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:2499 +#: templates/js/translated/part.js:2780 msgid "Minimum Stock Level" msgstr "" @@ -10290,388 +10431,388 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:74 +#: templates/js/translated/stock.js:73 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:104 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:114 +#: templates/js/translated/stock.js:113 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:148 +#: templates/js/translated/stock.js:147 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:163 +#: templates/js/translated/stock.js:162 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:177 +#: templates/js/translated/stock.js:176 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:184 +#: templates/js/translated/stock.js:183 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:193 +#: templates/js/translated/stock.js:192 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:197 +#: templates/js/translated/stock.js:196 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:201 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:256 +#: templates/js/translated/stock.js:255 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:298 +#: templates/js/translated/stock.js:297 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:304 +#: templates/js/translated/stock.js:303 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)" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:368 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:389 +#: templates/js/translated/stock.js:388 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:405 +#: templates/js/translated/stock.js:404 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:410 +#: templates/js/translated/stock.js:409 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:431 +#: templates/js/translated/stock.js:430 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:481 +#: templates/js/translated/stock.js:480 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:494 +#: templates/js/translated/stock.js:493 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:519 +#: templates/js/translated/stock.js:518 msgid "Find Serial Number" msgstr "Trouver un numéro de série" -#: templates/js/translated/stock.js:523 templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:522 templates/js/translated/stock.js:523 msgid "Enter serial number" msgstr "Entrer le numéro de série" -#: templates/js/translated/stock.js:540 +#: templates/js/translated/stock.js:539 msgid "Enter a serial number" msgstr "Entrer un numéro de série" -#: templates/js/translated/stock.js:560 +#: templates/js/translated/stock.js:559 msgid "No matching serial number" msgstr "Aucun numéro de série correspondant" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:568 msgid "More than one matching result found" msgstr "Plus d'un résultat correspondant trouvé" -#: templates/js/translated/stock.js:692 +#: templates/js/translated/stock.js:691 msgid "Confirm stock assignment" msgstr "Confirmer l'assignation de stock" -#: templates/js/translated/stock.js:693 +#: templates/js/translated/stock.js:692 msgid "Assign Stock to Customer" msgstr "Assigner le stock au client" -#: templates/js/translated/stock.js:770 +#: templates/js/translated/stock.js:769 msgid "Warning: Merge operation cannot be reversed" msgstr "Attention : l'opération de fusion est irréversible" -#: templates/js/translated/stock.js:771 +#: templates/js/translated/stock.js:770 msgid "Some information will be lost when merging stock items" msgstr "Certaines informations seront perdues lors de la fusion des articles en stock" -#: templates/js/translated/stock.js:773 +#: templates/js/translated/stock.js:772 msgid "Stock transaction history will be deleted for merged items" msgstr "L'historique des transactions de stock sera supprimé pour les éléments fusionnés" -#: templates/js/translated/stock.js:774 +#: templates/js/translated/stock.js:773 msgid "Supplier part information will be deleted for merged items" msgstr "Les informations sur la pièce du fournisseur seront supprimées pour les éléments fusionnés" -#: templates/js/translated/stock.js:863 +#: templates/js/translated/stock.js:862 msgid "Confirm stock item merge" msgstr "Confirmer la fusion de l'article en stock" -#: templates/js/translated/stock.js:864 +#: templates/js/translated/stock.js:863 msgid "Merge Stock Items" msgstr "Fusionner les articles en stock" -#: templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:958 msgid "Transfer Stock" msgstr "Transférer le stock" -#: templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:959 msgid "Move" msgstr "Transférer" -#: templates/js/translated/stock.js:966 +#: templates/js/translated/stock.js:965 msgid "Count Stock" msgstr "Compter le stock" -#: templates/js/translated/stock.js:967 +#: templates/js/translated/stock.js:966 msgid "Count" msgstr "Compter" -#: templates/js/translated/stock.js:971 +#: templates/js/translated/stock.js:970 msgid "Remove Stock" msgstr "Supprimer du stock" -#: templates/js/translated/stock.js:972 +#: templates/js/translated/stock.js:971 msgid "Take" msgstr "Supprimer" -#: templates/js/translated/stock.js:976 +#: templates/js/translated/stock.js:975 msgid "Add Stock" msgstr "Ajouter du stock" -#: templates/js/translated/stock.js:977 users/models.py:220 +#: templates/js/translated/stock.js:976 users/models.py:221 msgid "Add" msgstr "Ajouter" -#: templates/js/translated/stock.js:981 +#: templates/js/translated/stock.js:980 msgid "Delete Stock" msgstr "Supprimer le stock" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Quantity cannot be adjusted for serialized stock" msgstr "La quantité ne peut pas être ajustée pour un stock sérialisé" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Specify stock quantity" msgstr "Spécifiez la quantité du stock" -#: templates/js/translated/stock.js:1114 +#: templates/js/translated/stock.js:1113 msgid "You must select at least one available stock item" msgstr "Vous devez sélectionner au moins un article en stock disponible" -#: templates/js/translated/stock.js:1141 +#: templates/js/translated/stock.js:1140 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1277 +#: templates/js/translated/stock.js:1276 msgid "PASS" msgstr "RÉUSSI" -#: templates/js/translated/stock.js:1279 +#: templates/js/translated/stock.js:1278 msgid "FAIL" msgstr "ÉCHEC" -#: templates/js/translated/stock.js:1284 +#: templates/js/translated/stock.js:1283 msgid "NO RESULT" msgstr "AUCUN RÉSULTAT" -#: templates/js/translated/stock.js:1331 +#: templates/js/translated/stock.js:1330 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1334 +#: templates/js/translated/stock.js:1333 msgid "Add test result" msgstr "Ajouter un résultat de test" -#: templates/js/translated/stock.js:1360 +#: templates/js/translated/stock.js:1359 msgid "No test results found" msgstr "Aucun résultat de test trouvé" -#: templates/js/translated/stock.js:1417 +#: templates/js/translated/stock.js:1416 msgid "Test Date" msgstr "Date du test" -#: templates/js/translated/stock.js:1582 +#: templates/js/translated/stock.js:1581 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1604 +#: templates/js/translated/stock.js:1603 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1633 +#: templates/js/translated/stock.js:1632 msgid "In production" msgstr "En production" -#: templates/js/translated/stock.js:1637 +#: templates/js/translated/stock.js:1636 msgid "Installed in Stock Item" msgstr "Article en stock installé dans un autre article en stock" -#: templates/js/translated/stock.js:1645 +#: templates/js/translated/stock.js:1644 msgid "Assigned to Sales Order" msgstr "Assigné à une commande de vente" -#: templates/js/translated/stock.js:1651 +#: templates/js/translated/stock.js:1650 msgid "No stock location set" msgstr "Aucun emplacement de stock défini" -#: templates/js/translated/stock.js:1820 +#: templates/js/translated/stock.js:1815 msgid "Stock item is in production" msgstr "L'article de stock est en production" -#: templates/js/translated/stock.js:1825 +#: templates/js/translated/stock.js:1820 msgid "Stock item assigned to sales order" msgstr "L'article en stock a été assigné à une commande de vente" -#: templates/js/translated/stock.js:1828 +#: templates/js/translated/stock.js:1823 msgid "Stock item assigned to customer" msgstr "L'article en stock a été assigné à un client" -#: templates/js/translated/stock.js:1831 +#: templates/js/translated/stock.js:1826 msgid "Serialized stock item has been allocated" msgstr "L'article de stock sérialisé a été alloué" -#: templates/js/translated/stock.js:1833 +#: templates/js/translated/stock.js:1828 msgid "Stock item has been fully allocated" msgstr "L'article de stock a été complètement alloué" -#: templates/js/translated/stock.js:1835 +#: templates/js/translated/stock.js:1830 msgid "Stock item has been partially allocated" msgstr "L'article de stock a été partiellement alloué" -#: templates/js/translated/stock.js:1838 +#: templates/js/translated/stock.js:1833 msgid "Stock item has been installed in another item" msgstr "L'article en stock a été installé dans un autre article" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1837 msgid "Stock item has expired" msgstr "L'article en stock a expiré" -#: templates/js/translated/stock.js:1844 +#: templates/js/translated/stock.js:1839 msgid "Stock item will expire soon" msgstr "L'article en stock va bientôt expirer" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1846 msgid "Stock item has been rejected" msgstr "L'article de stock a été rejeté" -#: templates/js/translated/stock.js:1853 +#: templates/js/translated/stock.js:1848 msgid "Stock item is lost" msgstr "L'article de stock est perdu" -#: templates/js/translated/stock.js:1855 +#: templates/js/translated/stock.js:1850 msgid "Stock item is destroyed" msgstr "L'article de stock est détruit" -#: templates/js/translated/stock.js:1859 +#: templates/js/translated/stock.js:1854 #: templates/js/translated/table_filters.js:216 msgid "Depleted" msgstr "Epuisé" -#: templates/js/translated/stock.js:1989 +#: templates/js/translated/stock.js:1984 msgid "Supplier part not specified" msgstr "Pièce de fournisseur non précisée" -#: templates/js/translated/stock.js:2026 +#: templates/js/translated/stock.js:2021 msgid "No stock items matching query" msgstr "Aucun article de stock ne correspond à la requête" -#: templates/js/translated/stock.js:2199 +#: templates/js/translated/stock.js:2194 msgid "Set Stock Status" msgstr "Définir l'état du stock" -#: templates/js/translated/stock.js:2213 +#: templates/js/translated/stock.js:2208 msgid "Select Status Code" msgstr "Sélectionner le code de statut" -#: templates/js/translated/stock.js:2214 +#: templates/js/translated/stock.js:2209 msgid "Status code must be selected" msgstr "Le code de statut doit être sélectionné" -#: templates/js/translated/stock.js:2446 +#: templates/js/translated/stock.js:2441 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2536 msgid "Details" msgstr "Détails" -#: templates/js/translated/stock.js:2557 +#: templates/js/translated/stock.js:2552 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2579 +#: templates/js/translated/stock.js:2574 msgid "Location no longer exists" msgstr "L'emplacement n'existe plus" -#: templates/js/translated/stock.js:2598 +#: templates/js/translated/stock.js:2593 msgid "Purchase order no longer exists" msgstr "La commande d'achat n'existe plus" -#: templates/js/translated/stock.js:2617 +#: templates/js/translated/stock.js:2612 msgid "Customer no longer exists" msgstr "Le client n'existe plus" -#: templates/js/translated/stock.js:2635 +#: templates/js/translated/stock.js:2630 msgid "Stock item no longer exists" msgstr "L'article de stock n'existe plus" -#: templates/js/translated/stock.js:2658 +#: templates/js/translated/stock.js:2653 msgid "Added" msgstr "Ajouté" -#: templates/js/translated/stock.js:2666 +#: templates/js/translated/stock.js:2661 msgid "Removed" msgstr "Supprimé" -#: templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2737 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2793 templates/js/translated/stock.js:2829 +#: templates/js/translated/stock.js:2788 templates/js/translated/stock.js:2824 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2845 +#: templates/js/translated/stock.js:2840 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2866 +#: templates/js/translated/stock.js:2861 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2867 +#: templates/js/translated/stock.js:2862 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2869 +#: templates/js/translated/stock.js:2864 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2870 +#: templates/js/translated/stock.js:2865 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:2866 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2872 +#: templates/js/translated/stock.js:2867 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2885 +#: templates/js/translated/stock.js:2880 msgid "Select part to install" msgstr "" @@ -10696,7 +10837,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:92 -#: templates/js/translated/table_filters.js:516 +#: templates/js/translated/table_filters.js:520 msgid "Has Pricing" msgstr "" @@ -10912,6 +11053,10 @@ msgstr "" msgid "Purchasable" msgstr "Achetable" +#: templates/js/translated/table_filters.js:504 +msgid "Has stocktake entries" +msgstr "" + #: templates/js/translated/tables.js:70 msgid "Display calendar view" msgstr "Affichage du calendrier" @@ -11206,35 +11351,35 @@ msgstr "Droits" msgid "Important dates" msgstr "Dates importantes" -#: users/models.py:207 +#: users/models.py:208 msgid "Permission set" msgstr "Droit défini" -#: users/models.py:215 +#: users/models.py:216 msgid "Group" msgstr "Groupe" -#: users/models.py:218 +#: users/models.py:219 msgid "View" msgstr "Vue" -#: users/models.py:218 +#: users/models.py:219 msgid "Permission to view items" msgstr "Droit de voir des éléments" -#: users/models.py:220 +#: users/models.py:221 msgid "Permission to add items" msgstr "Droit d'ajouter des éléments" -#: users/models.py:222 +#: users/models.py:223 msgid "Change" msgstr "Modifier" -#: users/models.py:222 +#: users/models.py:223 msgid "Permissions to edit items" msgstr "Droit de modifier des élément" -#: users/models.py:224 +#: users/models.py:225 msgid "Permission to delete items" msgstr "Droit de supprimer des éléments" diff --git a/InvenTree/locale/he/LC_MESSAGES/django.po b/InvenTree/locale/he/LC_MESSAGES/django.po index 5f39884091..dcd01c6d07 100644 --- a/InvenTree/locale/he/LC_MESSAGES/django.po +++ b/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: 2022-12-30 20:46+0000\n" -"PO-Revision-Date: 2022-12-31 11:29\n" +"POT-Creation-Date: 2023-01-01 11:05+0000\n" +"PO-Revision-Date: 2023-01-01 11:26\n" "Last-Translator: \n" "Language-Team: Hebrew\n" "Language: he_IL\n" @@ -34,7 +34,7 @@ msgstr "הזן תאריך סיום" #: company/templates/company/sidebar.html:25 order/models.py:943 #: order/templates/order/po_sidebar.html:11 #: order/templates/order/so_sidebar.html:17 part/admin.py:27 -#: part/templates/part/part_sidebar.html:57 +#: part/models.py:2932 part/templates/part/part_sidebar.html:62 #: report/templates/report/inventree_build_order_base.html:172 #: stock/admin.py:103 stock/models.py:2061 stock/models.py:2169 #: stock/serializers.py:321 stock/serializers.py:454 stock/serializers.py:535 @@ -44,8 +44,8 @@ msgstr "הזן תאריך סיום" #: templates/js/translated/company.js:1023 #: templates/js/translated/order.js:2435 templates/js/translated/order.js:2569 #: templates/js/translated/order.js:3067 templates/js/translated/order.js:4004 -#: templates/js/translated/order.js:4385 templates/js/translated/stock.js:1413 -#: templates/js/translated/stock.js:2020 +#: templates/js/translated/order.js:4385 templates/js/translated/part.js:882 +#: templates/js/translated/stock.js:1412 templates/js/translated/stock.js:2015 msgid "Notes" msgstr "" @@ -204,18 +204,18 @@ msgstr "קובץ מצורף" msgid "Select file to attach" msgstr "בחר קובץ לצירוף" -#: InvenTree/models.py:412 common/models.py:2366 company/models.py:129 +#: InvenTree/models.py:412 common/models.py:2373 company/models.py:129 #: company/models.py:281 company/models.py:516 order/models.py:85 -#: order/models.py:1282 part/admin.py:25 part/models.py:865 +#: order/models.py:1282 part/admin.py:25 part/models.py:866 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: stock/admin.py:102 templates/js/translated/company.js:692 #: templates/js/translated/company.js:1012 -#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1615 +#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1886 msgid "Link" msgstr "קישור" -#: InvenTree/models.py:413 build/models.py:290 part/models.py:866 +#: InvenTree/models.py:413 build/models.py:290 part/models.py:867 #: stock/models.py:716 msgid "Link to external URL" msgstr "קישור חיצוני" @@ -229,12 +229,13 @@ msgstr "הערה" msgid "File comment" msgstr "הערת קובץ" -#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1810 -#: common/models.py:1811 common/models.py:2034 common/models.py:2035 -#: common/models.py:2296 common/models.py:2297 part/models.py:2948 -#: part/models.py:2968 plugin/models.py:264 plugin/models.py:265 +#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1817 +#: common/models.py:1818 common/models.py:2041 common/models.py:2042 +#: common/models.py:2303 common/models.py:2304 part/models.py:2940 +#: part/models.py:3026 part/models.py:3046 plugin/models.py:264 +#: plugin/models.py:265 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2689 +#: templates/js/translated/stock.js:2684 msgid "User" msgstr "משתמש" @@ -271,19 +272,20 @@ msgstr "שגיאה בשינוי שם פריט" msgid "Invalid choice" msgstr "בחירה שגויה" -#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2020 -#: company/models.py:363 label/models.py:101 part/models.py:809 -#: part/models.py:3123 plugin/models.py:94 report/models.py:152 +#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2027 +#: company/models.py:363 label/models.py:101 part/models.py:810 +#: part/models.py:3201 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 +#: templates/InvenTree/settings/notifications.html:17 #: templates/InvenTree/settings/plugin.html:60 #: templates/InvenTree/settings/plugin.html:104 #: templates/InvenTree/settings/plugin_settings.html:23 -#: templates/InvenTree/settings/settings.html:344 +#: templates/InvenTree/settings/settings.html:345 #: templates/js/translated/company.js:581 #: templates/js/translated/company.js:794 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:711 templates/js/translated/part.js:880 -#: templates/js/translated/part.js:2010 templates/js/translated/stock.js:2434 +#: templates/js/translated/part.js:982 templates/js/translated/part.js:1151 +#: templates/js/translated/part.js:2291 templates/js/translated/stock.js:2429 msgid "Name" msgstr "שם" @@ -292,24 +294,25 @@ msgstr "שם" #: company/models.py:522 company/templates/company/company_base.html:72 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:108 label/models.py:108 -#: order/models.py:83 part/admin.py:141 part/admin.py:222 part/models.py:832 -#: part/models.py:3132 part/templates/part/category.html:75 +#: order/models.py:83 part/admin.py:174 part/admin.py:255 part/models.py:833 +#: part/models.py:3210 part/templates/part/category.html:75 #: part/templates/part/part_base.html:172 #: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/admin.py:25 stock/templates/stock/location.html:117 +#: templates/InvenTree/settings/notifications.html:19 #: templates/InvenTree/settings/plugin_settings.html:28 -#: templates/InvenTree/settings/settings.html:355 +#: templates/InvenTree/settings/settings.html:356 #: templates/js/translated/bom.js:592 templates/js/translated/bom.js:895 #: templates/js/translated/build.js:2596 templates/js/translated/company.js:445 #: templates/js/translated/company.js:703 #: templates/js/translated/company.js:987 templates/js/translated/order.js:2030 #: templates/js/translated/order.js:2267 templates/js/translated/order.js:2845 -#: templates/js/translated/part.js:773 templates/js/translated/part.js:1223 -#: templates/js/translated/part.js:1497 templates/js/translated/part.js:2046 -#: templates/js/translated/part.js:2121 templates/js/translated/stock.js:1787 -#: templates/js/translated/stock.js:2466 templates/js/translated/stock.js:2526 +#: templates/js/translated/part.js:1044 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1768 templates/js/translated/part.js:2327 +#: templates/js/translated/part.js:2402 templates/js/translated/stock.js:1782 +#: templates/js/translated/stock.js:2461 templates/js/translated/stock.js:2521 msgid "Description" msgstr "תיאור" @@ -322,7 +325,7 @@ msgid "parent" msgstr "מקור" #: InvenTree/models.py:580 InvenTree/models.py:581 -#: templates/js/translated/part.js:2055 templates/js/translated/stock.js:2475 +#: templates/js/translated/part.js:2336 templates/js/translated/stock.js:2470 msgid "Path" msgstr "" @@ -354,7 +357,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:58 part/models.py:3468 +#: InvenTree/serializers.py:58 part/models.py:3546 msgid "Must be a valid number" msgstr "המספר חייב להיות תקין" @@ -421,107 +424,107 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:639 +#: InvenTree/settings.py:642 msgid "Czech" msgstr "" -#: InvenTree/settings.py:640 +#: InvenTree/settings.py:643 msgid "Danish" msgstr "" -#: InvenTree/settings.py:641 +#: InvenTree/settings.py:644 msgid "German" msgstr "גרמנית" -#: InvenTree/settings.py:642 +#: InvenTree/settings.py:645 msgid "Greek" msgstr "יוונית" -#: InvenTree/settings.py:643 +#: InvenTree/settings.py:646 msgid "English" msgstr "אנגלית" -#: InvenTree/settings.py:644 +#: InvenTree/settings.py:647 msgid "Spanish" msgstr "ספרדית" -#: InvenTree/settings.py:645 +#: InvenTree/settings.py:648 msgid "Spanish (Mexican)" msgstr "ספרדית (מקסיקנית)" -#: InvenTree/settings.py:646 +#: InvenTree/settings.py:649 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:647 +#: InvenTree/settings.py:650 msgid "French" msgstr "צרפתית" -#: InvenTree/settings.py:648 +#: InvenTree/settings.py:651 msgid "Hebrew" msgstr "עברית" -#: InvenTree/settings.py:649 +#: InvenTree/settings.py:652 msgid "Hungarian" msgstr "" -#: InvenTree/settings.py:650 +#: InvenTree/settings.py:653 msgid "Italian" msgstr "איטלקית" -#: InvenTree/settings.py:651 +#: InvenTree/settings.py:654 msgid "Japanese" msgstr "יפנית" -#: InvenTree/settings.py:652 +#: InvenTree/settings.py:655 msgid "Korean" msgstr "קוריאנית" -#: InvenTree/settings.py:653 +#: InvenTree/settings.py:656 msgid "Dutch" msgstr "הולנדית" -#: InvenTree/settings.py:654 +#: InvenTree/settings.py:657 msgid "Norwegian" msgstr "נורווגית" -#: InvenTree/settings.py:655 +#: InvenTree/settings.py:658 msgid "Polish" msgstr "פולנית" -#: InvenTree/settings.py:656 +#: InvenTree/settings.py:659 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:657 +#: InvenTree/settings.py:660 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:658 +#: InvenTree/settings.py:661 msgid "Russian" msgstr "רוסית" -#: InvenTree/settings.py:659 +#: InvenTree/settings.py:662 msgid "Slovenian" msgstr "" -#: InvenTree/settings.py:660 +#: InvenTree/settings.py:663 msgid "Swedish" msgstr "שוודית" -#: InvenTree/settings.py:661 +#: InvenTree/settings.py:664 msgid "Thai" msgstr "תאילנדית" -#: InvenTree/settings.py:662 +#: InvenTree/settings.py:665 msgid "Turkish" msgstr "טורקית" -#: InvenTree/settings.py:663 +#: InvenTree/settings.py:666 msgid "Vietnamese" msgstr "ווייטנאמית" -#: InvenTree/settings.py:664 +#: InvenTree/settings.py:667 msgid "Chinese" msgstr "סינית" @@ -652,7 +655,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2124 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2119 msgid "Merged stock items" msgstr "" @@ -756,7 +759,7 @@ msgstr "" #: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:141 -#: templates/InvenTree/settings/sidebar.html:47 +#: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:254 users/models.py:41 msgid "Build Orders" msgstr "" @@ -766,8 +769,9 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:155 order/models.py:241 order/models.py:651 -#: order/models.py:941 part/admin.py:224 part/models.py:3378 +#: order/models.py:941 part/admin.py:257 part/models.py:3456 #: part/templates/part/upload_bom.html:54 +#: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 #: templates/js/translated/bom.js:729 templates/js/translated/bom.js:905 @@ -793,13 +797,15 @@ msgstr "" #: build/models.py:180 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:684 #: order/models.py:1038 order/models.py:1149 order/models.py:1150 -#: part/models.py:381 part/models.py:2781 part/models.py:2894 -#: part/models.py:2909 part/models.py:2928 part/models.py:2946 -#: part/models.py:3045 part/models.py:3166 part/models.py:3258 -#: part/models.py:3343 part/models.py:3659 part/serializers.py:853 -#: part/templates/part/part_app_base.html:8 +#: part/models.py:382 part/models.py:2799 part/models.py:2912 +#: part/models.py:2972 part/models.py:2987 part/models.py:3006 +#: part/models.py:3024 part/models.py:3123 part/models.py:3244 +#: part/models.py:3336 part/models.py:3421 part/models.py:3737 +#: part/serializers.py:894 part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 +#: report/templates/report/inventree_bill_of_materials_report.html:110 +#: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_base.html:109 #: report/templates/report/inventree_po_report.html:89 #: report/templates/report/inventree_so_report.html:90 stock/serializers.py:90 @@ -819,12 +825,12 @@ msgstr "" #: templates/js/translated/order.js:1172 templates/js/translated/order.js:1676 #: templates/js/translated/order.js:2252 templates/js/translated/order.js:3199 #: templates/js/translated/order.js:3595 templates/js/translated/order.js:3825 -#: templates/js/translated/part.js:1208 templates/js/translated/part.js:1280 -#: templates/js/translated/part.js:1474 templates/js/translated/pricing.js:102 -#: templates/js/translated/stock.js:618 templates/js/translated/stock.js:783 -#: templates/js/translated/stock.js:993 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2552 templates/js/translated/stock.js:2747 -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/part.js:1479 templates/js/translated/part.js:1551 +#: templates/js/translated/part.js:1745 templates/js/translated/pricing.js:102 +#: templates/js/translated/stock.js:617 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:992 templates/js/translated/stock.js:1738 +#: templates/js/translated/stock.js:2547 templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2879 msgid "Part" msgstr "רכיב" @@ -890,7 +896,7 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:252 order/models.py:87 part/models.py:1001 +#: build/models.py:252 order/models.py:87 part/models.py:1002 #: part/templates/part/part_base.html:318 templates/js/translated/order.js:2858 msgid "Creation Date" msgstr "" @@ -923,7 +929,7 @@ msgstr "" #: build/models.py:283 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:101 #: order/templates/order/order_base.html:185 -#: order/templates/order/sales_order_base.html:183 part/models.py:1005 +#: order/templates/order/sales_order_base.html:183 part/models.py:1006 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2658 templates/js/translated/order.js:2064 msgid "Responsible" @@ -936,7 +942,7 @@ msgstr "" #: build/models.py:289 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:188 -#: part/templates/part/part_base.html:376 stock/models.py:714 +#: part/templates/part/part_base.html:390 stock/models.py:714 #: stock/templates/stock/item_base.html:203 msgid "External Link" msgstr "" @@ -1011,8 +1017,8 @@ msgstr "" #: templates/js/translated/order.js:107 templates/js/translated/order.js:3200 #: templates/js/translated/order.js:3502 templates/js/translated/order.js:3507 #: templates/js/translated/order.js:3602 templates/js/translated/order.js:3694 -#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 -#: templates/js/translated/stock.js:2625 +#: templates/js/translated/part.js:803 templates/js/translated/stock.js:618 +#: templates/js/translated/stock.js:783 templates/js/translated/stock.js:2620 msgid "Stock Item" msgstr "" @@ -1022,12 +1028,13 @@ msgstr "" #: build/models.py:1364 build/serializers.py:192 #: build/templates/build/build_base.html:85 -#: build/templates/build/detail.html:34 common/models.py:1842 +#: build/templates/build/detail.html:34 common/models.py:1849 #: order/models.py:934 order/models.py:1460 order/serializers.py:1206 -#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:223 -#: part/forms.py:40 part/models.py:3359 +#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:256 +#: part/forms.py:40 part/models.py:2919 part/models.py:3437 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 +#: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_base.html:113 #: report/templates/report/inventree_po_report.html:90 #: report/templates/report/inventree_so_report.html:91 @@ -1049,13 +1056,14 @@ msgstr "" #: templates/js/translated/order.js:3201 templates/js/translated/order.js:3521 #: templates/js/translated/order.js:3608 templates/js/translated/order.js:3700 #: templates/js/translated/order.js:3847 templates/js/translated/order.js:4338 -#: templates/js/translated/part.js:1078 templates/js/translated/part.js:2568 +#: templates/js/translated/part.js:805 templates/js/translated/part.js:876 +#: templates/js/translated/part.js:1349 templates/js/translated/part.js:2849 #: templates/js/translated/pricing.js:114 #: templates/js/translated/pricing.js:207 #: templates/js/translated/pricing.js:255 -#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:490 -#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:814 -#: templates/js/translated/stock.js:2674 templates/js/translated/stock.js:2759 +#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:489 +#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:813 +#: templates/js/translated/stock.js:2669 templates/js/translated/stock.js:2754 msgid "Quantity" msgstr "כמות" @@ -1097,8 +1105,8 @@ msgid "Enter quantity for build output" msgstr "" #: build/serializers.py:207 build/serializers.py:683 order/models.py:327 -#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:645 -#: part/serializers.py:1016 stock/models.py:574 stock/models.py:1312 +#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:686 +#: part/serializers.py:1057 stock/models.py:574 stock/models.py:1312 #: stock/serializers.py:294 msgid "Quantity must be greater than zero" msgstr "" @@ -1113,7 +1121,7 @@ msgstr "" #: build/serializers.py:231 order/serializers.py:463 order/serializers.py:1210 #: stock/serializers.py:303 templates/js/translated/order.js:1545 -#: templates/js/translated/stock.js:303 templates/js/translated/stock.js:491 +#: templates/js/translated/stock.js:302 templates/js/translated/stock.js:490 msgid "Serial Numbers" msgstr "מספרים סידוריים" @@ -1146,9 +1154,10 @@ msgstr "" #: templates/js/translated/build.js:1759 templates/js/translated/order.js:1572 #: templates/js/translated/order.js:3514 templates/js/translated/order.js:3619 #: templates/js/translated/order.js:3627 templates/js/translated/order.js:3708 -#: templates/js/translated/part.js:183 templates/js/translated/stock.js:620 -#: templates/js/translated/stock.js:785 templates/js/translated/stock.js:995 -#: templates/js/translated/stock.js:1895 templates/js/translated/stock.js:2566 +#: templates/js/translated/part.js:186 templates/js/translated/part.js:804 +#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 +#: templates/js/translated/stock.js:994 templates/js/translated/stock.js:1890 +#: templates/js/translated/stock.js:2561 msgid "Location" msgstr "" @@ -1162,8 +1171,8 @@ msgstr "" #: stock/templates/stock/item_base.html:421 #: templates/js/translated/barcode.js:237 templates/js/translated/build.js:2630 #: templates/js/translated/order.js:1681 templates/js/translated/order.js:2034 -#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1870 -#: templates/js/translated/stock.js:2643 templates/js/translated/stock.js:2775 +#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:2638 templates/js/translated/stock.js:2770 msgid "Status" msgstr "" @@ -1239,8 +1248,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:595 build/serializers.py:640 part/models.py:3495 -#: part/models.py:3651 +#: build/serializers.py:595 build/serializers.py:640 part/models.py:3573 +#: part/models.py:3729 msgid "BOM Item" msgstr "" @@ -1406,7 +1415,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2670 templates/js/translated/order.js:2051 #: templates/js/translated/order.js:2382 templates/js/translated/order.js:2866 -#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1093 +#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1364 msgid "Target Date" msgstr "" @@ -1484,8 +1493,8 @@ msgstr "" #: stock/templates/stock/item_base.html:168 #: templates/js/translated/build.js:1250 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:1884 -#: templates/js/translated/stock.js:2782 +#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:1879 +#: templates/js/translated/stock.js:2777 #: templates/js/translated/table_filters.js:179 #: templates/js/translated/table_filters.js:270 msgid "Batch" @@ -1617,8 +1626,8 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:86 #: order/templates/order/sales_order_detail.html:140 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:210 -#: part/templates/part/part_sidebar.html:55 stock/templates/stock/item.html:117 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:233 +#: part/templates/part/part_sidebar.html:60 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" msgstr "" @@ -1635,7 +1644,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:316 +#: build/templates/build/index.html:18 part/templates/part/detail.html:339 msgid "New Build Order" msgstr "" @@ -1928,9 +1937,9 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1014 part/admin.py:41 part/models.py:3168 +#: common/models.py:1014 part/admin.py:41 part/models.py:3246 #: report/models.py:158 templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:504 +#: templates/js/translated/table_filters.js:508 msgid "Template" msgstr "" @@ -1938,7 +1947,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:1021 part/admin.py:37 part/admin.py:229 part/models.py:957 +#: common/models.py:1021 part/admin.py:37 part/admin.py:262 part/models.py:958 #: templates/js/translated/bom.js:1595 #: templates/js/translated/table_filters.js:196 #: templates/js/translated/table_filters.js:467 @@ -1949,7 +1958,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1028 part/admin.py:38 part/models.py:963 +#: common/models.py:1028 part/admin.py:38 part/models.py:964 #: templates/js/translated/table_filters.js:475 msgid "Component" msgstr "" @@ -1958,7 +1967,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1035 part/admin.py:39 part/models.py:974 +#: common/models.py:1035 part/admin.py:39 part/models.py:975 msgid "Purchaseable" msgstr "" @@ -1966,7 +1975,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1042 part/admin.py:40 part/models.py:979 +#: common/models.py:1042 part/admin.py:40 part/models.py:980 #: templates/js/translated/table_filters.js:496 msgid "Salable" msgstr "" @@ -1975,10 +1984,10 @@ msgstr "" msgid "Parts are salable by default" msgstr "" -#: common/models.py:1049 part/admin.py:42 part/models.py:969 +#: common/models.py:1049 part/admin.py:42 part/models.py:970 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:120 -#: templates/js/translated/table_filters.js:508 +#: templates/js/translated/table_filters.js:512 msgid "Trackable" msgstr "" @@ -1986,10 +1995,10 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1056 part/admin.py:43 part/models.py:989 +#: common/models.py:1056 part/admin.py:43 part/models.py:990 #: part/templates/part/part_base.html:156 #: templates/js/translated/table_filters.js:42 -#: templates/js/translated/table_filters.js:512 +#: templates/js/translated/table_filters.js:516 msgid "Virtual" msgstr "" @@ -2417,7 +2426,7 @@ msgstr "" msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1461 common/models.py:1803 +#: common/models.py:1461 common/models.py:1810 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -2749,41 +2758,50 @@ msgstr "" msgid "Display part scheduling information" msgstr "" -#: common/models.py:1778 -msgid "Table String Length" +#: common/models.py:1778 part/templates/part/detail.html:61 +#: templates/js/translated/part.js:822 +msgid "Part Stocktake" msgstr "" #: common/models.py:1779 +msgid "Display part stocktake information" +msgstr "" + +#: common/models.py:1785 +msgid "Table String Length" +msgstr "" + +#: common/models.py:1786 msgid "Maximimum length limit for strings displayed in table views" msgstr "" -#: common/models.py:1843 +#: common/models.py:1850 msgid "Price break quantity" msgstr "" -#: common/models.py:1850 company/serializers.py:393 order/models.py:975 -#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1145 +#: common/models.py:1857 company/serializers.py:393 order/models.py:975 +#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1416 #: templates/js/translated/pricing.js:354 msgid "Price" msgstr "" -#: common/models.py:1851 +#: common/models.py:1858 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2011 common/models.py:2189 +#: common/models.py:2018 common/models.py:2196 msgid "Endpoint" msgstr "" -#: common/models.py:2012 +#: common/models.py:2019 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2021 +#: common/models.py:2028 msgid "Name for this webhook" msgstr "" -#: common/models.py:2026 part/admin.py:36 part/models.py:984 +#: common/models.py:2033 part/admin.py:36 part/models.py:985 #: plugin/models.py:100 templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:116 #: templates/js/translated/table_filters.js:336 @@ -2791,131 +2809,133 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:2027 +#: common/models.py:2034 msgid "Is this webhook active" msgstr "" -#: common/models.py:2041 +#: common/models.py:2048 msgid "Token" msgstr "" -#: common/models.py:2042 +#: common/models.py:2049 msgid "Token for access" msgstr "" -#: common/models.py:2049 +#: common/models.py:2056 msgid "Secret" msgstr "" -#: common/models.py:2050 +#: common/models.py:2057 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2156 +#: common/models.py:2163 msgid "Message ID" msgstr "" -#: common/models.py:2157 +#: common/models.py:2164 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2165 +#: common/models.py:2172 msgid "Host" msgstr "" -#: common/models.py:2166 +#: common/models.py:2173 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2173 +#: common/models.py:2180 msgid "Header" msgstr "" -#: common/models.py:2174 +#: common/models.py:2181 msgid "Header of this message" msgstr "" -#: common/models.py:2180 +#: common/models.py:2187 msgid "Body" msgstr "" -#: common/models.py:2181 +#: common/models.py:2188 msgid "Body of this message" msgstr "" -#: common/models.py:2190 +#: common/models.py:2197 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2195 +#: common/models.py:2202 msgid "Worked on" msgstr "" -#: common/models.py:2196 +#: common/models.py:2203 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2355 +#: common/models.py:2362 msgid "Id" msgstr "" -#: common/models.py:2361 templates/js/translated/news.js:35 +#: common/models.py:2368 templates/js/translated/news.js:35 msgid "Title" msgstr "" -#: common/models.py:2371 templates/js/translated/news.js:51 +#: common/models.py:2378 templates/js/translated/news.js:51 msgid "Published" msgstr "" -#: common/models.py:2376 templates/InvenTree/settings/plugin.html:62 +#: common/models.py:2383 templates/InvenTree/settings/plugin.html:62 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/news.js:47 msgid "Author" msgstr "" -#: common/models.py:2381 templates/js/translated/news.js:43 +#: common/models.py:2388 templates/js/translated/news.js:43 msgid "Summary" msgstr "" -#: common/models.py:2386 +#: common/models.py:2393 msgid "Read" msgstr "" -#: common/models.py:2387 +#: common/models.py:2394 msgid "Was this news item read?" msgstr "" -#: common/notifications.py:293 +#: common/notifications.py:294 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:295 +#: common/notifications.py:296 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:301 +#: common/notifications.py:302 msgid "Items Received" msgstr "" -#: common/notifications.py:303 +#: common/notifications.py:304 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:415 +#: common/notifications.py:416 msgid "Error raised by plugin" msgstr "" #: common/views.py:85 order/templates/order/order_wizard/po_upload.html:51 #: order/templates/order/purchase_order_detail.html:25 order/views.py:102 -#: part/views.py:107 templates/patterns/wizard/upload.html:37 +#: part/templates/part/import_wizard/part_upload.html:58 part/views.py:109 +#: templates/patterns/wizard/upload.html:37 msgid "Upload File" msgstr "" #: common/views.py:86 order/templates/order/order_wizard/match_fields.html:52 #: order/views.py:103 #: part/templates/part/import_wizard/ajax_match_fields.html:45 -#: part/views.py:108 templates/patterns/wizard/match_fields.html:51 +#: part/templates/part/import_wizard/match_fields.html:52 part/views.py:110 +#: templates/patterns/wizard/match_fields.html:51 msgid "Match Fields" msgstr "" @@ -2934,7 +2954,9 @@ msgstr "" #: common/views.py:509 order/templates/order/order_wizard/match_fields.html:27 #: order/templates/order/order_wizard/match_parts.html:19 #: order/templates/order/order_wizard/po_upload.html:49 +#: part/templates/part/import_wizard/match_fields.html:27 #: part/templates/part/import_wizard/match_references.html:19 +#: part/templates/part/import_wizard/part_upload.html:56 #: templates/patterns/wizard/match_fields.html:26 #: templates/patterns/wizard/upload.html:35 msgid "Previous Step" @@ -2995,7 +3017,7 @@ msgstr "" msgid "Link to external company information" msgstr "" -#: company/models.py:140 part/models.py:878 +#: company/models.py:140 part/models.py:879 msgid "Image" msgstr "" @@ -3028,8 +3050,8 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:153 company/serializers.py:399 -#: company/templates/company/company_base.html:107 part/models.py:2762 -#: part/serializers.py:154 part/serializers.py:182 stock/serializers.py:182 +#: company/templates/company/company_base.html:107 part/models.py:2780 +#: part/serializers.py:156 part/serializers.py:184 stock/serializers.py:182 #: templates/InvenTree/settings/pricing.html:64 msgid "Currency" msgstr "" @@ -3055,12 +3077,12 @@ msgstr "" #: templates/js/translated/company.js:433 #: templates/js/translated/company.js:534 #: templates/js/translated/company.js:669 -#: templates/js/translated/company.js:957 templates/js/translated/part.js:238 +#: templates/js/translated/company.js:957 templates/js/translated/part.js:241 #: templates/js/translated/table_filters.js:439 msgid "Manufacturer" msgstr "" -#: company/models.py:269 templates/js/translated/part.js:239 +#: company/models.py:269 templates/js/translated/part.js:242 msgid "Select manufacturer" msgstr "" @@ -3070,11 +3092,11 @@ msgstr "" #: templates/js/translated/company.js:533 #: templates/js/translated/company.js:685 #: templates/js/translated/company.js:976 templates/js/translated/order.js:2286 -#: templates/js/translated/part.js:249 templates/js/translated/part.js:1067 +#: templates/js/translated/part.js:252 templates/js/translated/part.js:1338 msgid "MPN" msgstr "" -#: company/models.py:276 templates/js/translated/part.js:250 +#: company/models.py:276 templates/js/translated/part.js:253 msgid "Manufacturer Part Number" msgstr "" @@ -3100,8 +3122,8 @@ msgstr "" #: company/models.py:370 #: report/templates/report/inventree_test_report_base.html:95 #: stock/models.py:2156 templates/js/translated/company.js:582 -#: templates/js/translated/company.js:800 templates/js/translated/part.js:889 -#: templates/js/translated/stock.js:1399 +#: templates/js/translated/company.js:800 templates/js/translated/part.js:1160 +#: templates/js/translated/stock.js:1398 msgid "Value" msgstr "" @@ -3109,10 +3131,10 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:377 part/admin.py:26 part/models.py:951 -#: part/models.py:3128 part/templates/part/part_base.html:286 -#: templates/InvenTree/settings/settings.html:349 -#: templates/js/translated/company.js:806 templates/js/translated/part.js:895 +#: company/models.py:377 part/admin.py:26 part/models.py:952 +#: part/models.py:3206 part/templates/part/part_base.html:286 +#: templates/InvenTree/settings/settings.html:350 +#: templates/js/translated/company.js:806 templates/js/translated/part.js:1166 msgid "Units" msgstr "" @@ -3132,24 +3154,24 @@ msgstr "" #: templates/js/translated/company.js:304 #: templates/js/translated/company.js:437 #: templates/js/translated/company.js:930 templates/js/translated/order.js:2017 -#: templates/js/translated/part.js:219 templates/js/translated/part.js:1035 +#: templates/js/translated/part.js:222 templates/js/translated/part.js:1306 #: templates/js/translated/pricing.js:231 #: templates/js/translated/table_filters.js:443 msgid "Supplier" msgstr "" -#: company/models.py:498 templates/js/translated/part.js:220 +#: company/models.py:498 templates/js/translated/part.js:223 msgid "Select supplier" msgstr "" #: company/models.py:503 company/templates/company/supplier_part.html:146 #: part/bom.py:253 part/bom.py:281 templates/js/translated/company.js:303 -#: templates/js/translated/order.js:2273 templates/js/translated/part.js:230 -#: templates/js/translated/part.js:1053 templates/js/translated/pricing.js:243 +#: templates/js/translated/order.js:2273 templates/js/translated/part.js:233 +#: templates/js/translated/part.js:1324 templates/js/translated/pricing.js:243 msgid "SKU" msgstr "" -#: company/models.py:504 templates/js/translated/part.js:231 +#: company/models.py:504 templates/js/translated/part.js:234 msgid "Supplier stock keeping unit" msgstr "" @@ -3166,24 +3188,25 @@ msgid "Supplier part description" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:181 -#: part/admin.py:225 part/models.py:3381 part/templates/part/upload_bom.html:59 +#: part/admin.py:258 part/models.py:3459 part/templates/part/upload_bom.html:59 +#: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:397 msgid "Note" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "base cost" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:534 company/templates/company/supplier_part.html:167 #: stock/admin.py:101 stock/models.py:682 #: stock/templates/stock/item_base.html:243 -#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2016 +#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2011 msgid "Packaging" msgstr "" @@ -3196,7 +3219,7 @@ msgstr "" #: templates/js/translated/company.js:997 templates/js/translated/order.js:826 #: templates/js/translated/order.js:1253 templates/js/translated/order.js:1508 #: templates/js/translated/order.js:2317 templates/js/translated/order.js:2334 -#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1137 +#: templates/js/translated/part.js:1356 templates/js/translated/part.js:1408 msgid "Pack Quantity" msgstr "" @@ -3204,7 +3227,7 @@ msgstr "" msgid "Unit quantity supplied in a single pack" msgstr "" -#: company/models.py:544 part/models.py:1863 +#: company/models.py:544 part/models.py:1869 msgid "multiple" msgstr "" @@ -3216,8 +3239,8 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:1118 templates/js/translated/build.js:1883 -#: templates/js/translated/build.js:2770 templates/js/translated/part.js:623 -#: templates/js/translated/part.js:626 +#: templates/js/translated/build.js:2770 templates/js/translated/part.js:626 +#: templates/js/translated/part.js:629 #: templates/js/translated/table_filters.js:206 msgid "Available" msgstr "" @@ -3300,7 +3323,7 @@ msgstr "" #: stock/templates/stock/item_base.html:399 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:429 templates/js/translated/order.js:2827 -#: templates/js/translated/stock.js:2607 +#: templates/js/translated/stock.js:2602 #: templates/js/translated/table_filters.js:447 msgid "Customer" msgstr "" @@ -3314,7 +3337,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:206 -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:525 msgid "Remove Image" msgstr "" @@ -3323,19 +3346,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:209 -#: part/templates/part/part_base.html:514 +#: part/templates/part/part_base.html:528 #: templates/InvenTree/settings/user.html:87 #: templates/InvenTree/settings/user.html:149 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:238 -#: part/templates/part/part_base.html:543 +#: part/templates/part/part_base.html:557 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:253 -#: part/templates/part/part_base.html:598 +#: part/templates/part/part_base.html:612 msgid "Download Image" msgstr "" @@ -3351,7 +3374,7 @@ msgstr "" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:357 +#: part/templates/part/detail.html:380 msgid "New Supplier Part" msgstr "" @@ -3380,7 +3403,7 @@ msgstr "" msgid "Create new manufacturer part" msgstr "" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:387 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:410 msgid "New Manufacturer Part" msgstr "" @@ -3394,9 +3417,9 @@ msgstr "" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:35 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:35 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:200 -#: templates/InvenTree/settings/sidebar.html:49 +#: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:293 templates/navbar.html:50 #: users/models.py:42 msgid "Purchase Orders" @@ -3417,9 +3440,9 @@ msgstr "" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:39 +#: part/templates/part/detail.html:130 part/templates/part/part_sidebar.html:39 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:220 -#: templates/InvenTree/settings/sidebar.html:51 +#: templates/InvenTree/settings/sidebar.html:53 #: templates/js/translated/search.js:317 templates/navbar.html:61 #: users/models.py:43 msgid "Sales Orders" @@ -3451,7 +3474,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:221 -#: part/templates/part/detail.html:87 part/templates/part/part_base.html:85 +#: part/templates/part/detail.html:110 part/templates/part/part_base.html:85 msgid "Order part" msgstr "" @@ -3482,28 +3505,28 @@ msgid "Suppliers" msgstr "" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:368 +#: part/templates/part/detail.html:391 msgid "Delete supplier parts" msgstr "" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:369 part/templates/part/detail.html:399 -#: templates/js/translated/forms.js:455 templates/js/translated/helpers.js:38 -#: templates/js/translated/part.js:351 templates/js/translated/stock.js:188 -#: users/models.py:224 +#: part/templates/part/detail.html:392 part/templates/part/detail.html:422 +#: templates/js/translated/forms.js:458 templates/js/translated/helpers.js:38 +#: templates/js/translated/part.js:354 templates/js/translated/stock.js:187 +#: users/models.py:225 msgid "Delete" msgstr "" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:184 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:207 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:189 +#: part/templates/part/detail.html:212 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:62 msgid "New Parameter" @@ -3514,7 +3537,7 @@ msgid "Delete parameters" msgstr "" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:825 +#: part/templates/part/detail.html:865 msgid "Add Parameter" msgstr "" @@ -3538,7 +3561,7 @@ msgstr "" #: company/templates/company/supplier_part.html:24 stock/models.py:665 #: stock/templates/stock/item_base.html:236 #: templates/js/translated/company.js:946 templates/js/translated/order.js:1173 -#: templates/js/translated/stock.js:1974 +#: templates/js/translated/stock.js:1969 msgid "Supplier Part" msgstr "" @@ -3578,7 +3601,7 @@ msgstr "" #: company/templates/company/supplier_part.html:56 #: company/templates/company/supplier_part.html:57 #: company/templates/company/supplier_part.html:222 -#: part/templates/part/detail.html:88 +#: part/templates/part/detail.html:111 msgid "Order Part" msgstr "" @@ -3630,7 +3653,7 @@ msgstr "" #: company/templates/company/supplier_part.html:204 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:198 -#: templates/js/translated/stock.js:467 +#: templates/js/translated/stock.js:466 msgid "New Stock Item" msgstr "" @@ -3662,10 +3685,10 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 -#: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/part.js:777 templates/js/translated/part.js:1378 -#: templates/js/translated/part.js:1534 templates/js/translated/stock.js:994 -#: templates/js/translated/stock.js:1799 templates/navbar.html:31 +#: templates/InvenTree/settings/sidebar.html:47 +#: templates/js/translated/part.js:1048 templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1805 templates/js/translated/stock.js:993 +#: templates/js/translated/stock.js:1794 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3680,7 +3703,7 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:29 #: part/templates/part/part_sidebar.html:30 -#: templates/InvenTree/settings/sidebar.html:35 +#: templates/InvenTree/settings/sidebar.html:37 msgid "Pricing" msgstr "" @@ -3692,7 +3715,7 @@ msgstr "" #: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:155 templates/js/translated/search.js:225 -#: templates/js/translated/stock.js:2484 users/models.py:40 +#: templates/js/translated/stock.js:2479 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3801,9 +3824,9 @@ msgstr "" #: stock/templates/stock/item_base.html:182 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:619 templates/js/translated/order.js:1174 -#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1012 -#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1954 -#: templates/js/translated/stock.js:2588 +#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1283 +#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1949 +#: templates/js/translated/stock.js:2583 msgid "Purchase Order" msgstr "" @@ -3973,7 +3996,7 @@ msgstr "" #: order/models.py:1046 order/templates/order/order_base.html:178 #: templates/js/translated/order.js:1679 templates/js/translated/order.js:2404 -#: templates/js/translated/part.js:1129 templates/js/translated/part.js:1161 +#: templates/js/translated/part.js:1400 templates/js/translated/part.js:1432 #: templates/js/translated/table_filters.js:358 msgid "Received" msgstr "" @@ -3984,7 +4007,7 @@ msgstr "" #: order/models.py:1054 stock/models.py:800 stock/serializers.py:173 #: stock/templates/stock/item_base.html:189 -#: templates/js/translated/stock.js:2005 +#: templates/js/translated/stock.js:2000 msgid "Purchase Price" msgstr "" @@ -4350,18 +4373,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:9 #: part/templates/part/import_wizard/ajax_match_fields.html:9 +#: part/templates/part/import_wizard/match_fields.html:9 #: templates/patterns/wizard/match_fields.html:8 msgid "Missing selections for the following required columns" msgstr "" #: order/templates/order/order_wizard/match_fields.html:20 #: part/templates/part/import_wizard/ajax_match_fields.html:20 +#: part/templates/part/import_wizard/match_fields.html:20 #: templates/patterns/wizard/match_fields.html:19 msgid "Duplicate selections found, see below. Fix them then retry submitting." msgstr "" #: order/templates/order/order_wizard/match_fields.html:29 #: order/templates/order/order_wizard/match_parts.html:21 +#: part/templates/part/import_wizard/match_fields.html:29 #: part/templates/part/import_wizard/match_references.html:21 #: templates/patterns/wizard/match_fields.html:28 msgid "Submit Selections" @@ -4369,18 +4395,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:35 #: part/templates/part/import_wizard/ajax_match_fields.html:28 +#: part/templates/part/import_wizard/match_fields.html:35 #: templates/patterns/wizard/match_fields.html:34 msgid "File Fields" msgstr "" #: order/templates/order/order_wizard/match_fields.html:42 #: part/templates/part/import_wizard/ajax_match_fields.html:35 +#: part/templates/part/import_wizard/match_fields.html:42 #: templates/patterns/wizard/match_fields.html:41 msgid "Remove column" msgstr "" #: order/templates/order/order_wizard/match_fields.html:60 #: part/templates/part/import_wizard/ajax_match_fields.html:53 +#: part/templates/part/import_wizard/match_fields.html:60 #: templates/patterns/wizard/match_fields.html:59 msgid "Duplicate selection" msgstr "" @@ -4389,12 +4418,13 @@ msgstr "" #: order/templates/order/order_wizard/match_parts.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: 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:102 templates/js/translated/build.js:485 #: templates/js/translated/build.js:641 templates/js/translated/build.js:2088 #: templates/js/translated/order.js:1122 templates/js/translated/order.js:1624 -#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:657 -#: templates/js/translated/stock.js:825 +#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:824 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4429,6 +4459,7 @@ msgstr "" #: order/templates/order/order_wizard/po_upload.html:27 #: part/templates/part/import_wizard/ajax_part_upload.html:10 +#: part/templates/part/import_wizard/part_upload.html:26 #: templates/patterns/wizard/upload.html:13 #, python-format msgid "Step %(step)s of %(count)s" @@ -4567,12 +4598,12 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:19 part/admin.py:219 part/models.py:3262 stock/admin.py:84 +#: part/admin.py:19 part/admin.py:252 part/models.py:3340 stock/admin.py:84 #: templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/admin.py:20 part/admin.py:221 part/models.py:3266 stock/admin.py:85 +#: part/admin.py:20 part/admin.py:254 part/models.py:3344 stock/admin.py:85 msgid "Part Name" msgstr "" @@ -4580,32 +4611,32 @@ msgstr "" msgid "Part Description" msgstr "" -#: part/admin.py:22 part/models.py:852 part/templates/part/part_base.html:272 -#: templates/js/translated/part.js:763 templates/js/translated/part.js:1491 -#: templates/js/translated/stock.js:1765 +#: part/admin.py:22 part/models.py:853 part/templates/part/part_base.html:272 +#: templates/js/translated/part.js:1034 templates/js/translated/part.js:1762 +#: templates/js/translated/stock.js:1760 msgid "IPN" msgstr "" -#: part/admin.py:23 part/models.py:860 part/templates/part/part_base.html:279 -#: report/models.py:171 templates/js/translated/part.js:768 +#: part/admin.py:23 part/models.py:861 part/templates/part/part_base.html:279 +#: report/models.py:171 templates/js/translated/part.js:1039 msgid "Revision" msgstr "" -#: part/admin.py:24 part/admin.py:145 part/models.py:838 +#: part/admin.py:24 part/admin.py:178 part/models.py:839 #: part/templates/part/category.html:87 part/templates/part/part_base.html:300 msgid "Keywords" msgstr "" -#: part/admin.py:28 part/admin.py:139 +#: part/admin.py:28 part/admin.py:172 #: templates/js/translated/model_renderers.js:338 msgid "Category ID" msgstr "" -#: part/admin.py:29 part/admin.py:140 +#: part/admin.py:29 part/admin.py:173 msgid "Category Name" msgstr "" -#: part/admin.py:30 part/admin.py:144 +#: part/admin.py:30 part/admin.py:177 msgid "Default Location ID" msgstr "" @@ -4613,7 +4644,7 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:33 part/models.py:944 part/templates/part/part_base.html:206 +#: part/admin.py:33 part/models.py:945 part/templates/part/part_base.html:206 msgid "Minimum Stock" msgstr "" @@ -4625,8 +4656,8 @@ msgstr "" #: part/admin.py:48 part/bom.py:145 part/templates/part/part_base.html:213 #: templates/js/translated/bom.js:1156 templates/js/translated/build.js:1935 -#: templates/js/translated/part.js:613 templates/js/translated/part.js:633 -#: templates/js/translated/part.js:1381 templates/js/translated/part.js:1559 +#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 +#: templates/js/translated/part.js:1652 templates/js/translated/part.js:1830 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4642,115 +4673,115 @@ msgid "Allocated" msgstr "" #: part/admin.py:51 part/templates/part/part_base.html:244 -#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 -#: templates/js/translated/part.js:1385 templates/js/translated/part.js:1566 +#: templates/js/translated/part.js:619 templates/js/translated/part.js:639 +#: templates/js/translated/part.js:1656 templates/js/translated/part.js:1837 msgid "Building" msgstr "" -#: part/admin.py:52 part/models.py:2846 +#: part/admin.py:52 part/models.py:2864 msgid "Minimum Cost" msgstr "" -#: part/admin.py:53 part/models.py:2852 +#: part/admin.py:53 part/models.py:2870 msgid "Maximum Cost" msgstr "" -#: part/admin.py:142 part/admin.py:216 stock/admin.py:26 stock/admin.py:98 +#: part/admin.py:175 part/admin.py:249 stock/admin.py:26 stock/admin.py:98 msgid "Parent ID" msgstr "" -#: part/admin.py:143 part/admin.py:218 stock/admin.py:27 +#: part/admin.py:176 part/admin.py:251 stock/admin.py:27 msgid "Parent Name" msgstr "" -#: part/admin.py:146 part/templates/part/category.html:81 +#: part/admin.py:179 part/templates/part/category.html:81 #: part/templates/part/category.html:94 msgid "Category Path" msgstr "" -#: part/admin.py:149 part/models.py:382 part/templates/part/cat_link.html:3 +#: part/admin.py:182 part/models.py:383 part/templates/part/cat_link.html:3 #: part/templates/part/category.html:23 part/templates/part/category.html:134 #: part/templates/part/category.html:154 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:84 -#: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:2065 templates/js/translated/search.js:146 +#: templates/InvenTree/settings/sidebar.html:43 +#: templates/js/translated/part.js:2346 templates/js/translated/search.js:146 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" -#: part/admin.py:211 +#: part/admin.py:244 msgid "BOM Level" msgstr "" -#: part/admin.py:213 +#: part/admin.py:246 msgid "BOM Item ID" msgstr "" -#: part/admin.py:217 +#: part/admin.py:250 msgid "Parent IPN" msgstr "" -#: part/admin.py:220 part/models.py:3270 +#: part/admin.py:253 part/models.py:3348 msgid "Part IPN" msgstr "" -#: part/admin.py:226 templates/js/translated/pricing.js:91 +#: part/admin.py:259 templates/js/translated/pricing.js:91 #: templates/js/translated/pricing.js:732 msgid "Minimum Price" msgstr "" -#: part/admin.py:227 templates/js/translated/pricing.js:86 +#: part/admin.py:260 templates/js/translated/pricing.js:86 #: templates/js/translated/pricing.js:740 msgid "Maximum Price" msgstr "" -#: part/api.py:536 +#: part/api.py:538 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:556 +#: part/api.py:558 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:574 +#: part/api.py:576 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:660 +#: part/api.py:662 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:818 +#: part/api.py:820 msgid "Valid" msgstr "" -#: part/api.py:819 +#: part/api.py:821 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:825 +#: part/api.py:827 msgid "This option must be selected" msgstr "" -#: part/api.py:1265 +#: part/api.py:1281 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1269 +#: part/api.py:1285 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1284 +#: part/api.py:1300 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1315 part/api.py:1319 part/api.py:1334 part/api.py:1338 +#: part/api.py:1331 part/api.py:1335 part/api.py:1350 part/api.py:1354 msgid "This field is required" msgstr "" -#: part/bom.py:142 part/models.py:116 part/models.py:887 -#: part/templates/part/category.html:109 part/templates/part/part_base.html:360 +#: part/bom.py:142 part/models.py:116 part/models.py:888 +#: part/templates/part/category.html:109 part/templates/part/part_base.html:374 msgid "Default Location" msgstr "" @@ -4801,7 +4832,7 @@ msgstr "" msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:159 part/models.py:3211 part/templates/part/category.html:16 +#: part/models.py:159 part/models.py:3289 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -4812,423 +4843,459 @@ msgstr "" msgid "Part Categories" msgstr "" -#: part/models.py:468 +#: part/models.py:469 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:538 part/models.py:550 +#: part/models.py:539 part/models.py:551 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:640 +#: part/models.py:641 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:771 +#: part/models.py:772 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:776 +#: part/models.py:777 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:790 +#: part/models.py:791 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:808 part/models.py:3267 +#: part/models.py:809 part/models.py:3345 msgid "Part name" msgstr "" -#: part/models.py:815 +#: part/models.py:816 msgid "Is Template" msgstr "" -#: part/models.py:816 +#: part/models.py:817 msgid "Is this part a template part?" msgstr "" -#: part/models.py:826 +#: part/models.py:827 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:827 +#: part/models.py:828 msgid "Variant Of" msgstr "" -#: part/models.py:833 +#: part/models.py:834 msgid "Part description" msgstr "" -#: part/models.py:839 +#: part/models.py:840 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:846 part/models.py:2966 part/models.py:3210 +#: part/models.py:847 part/models.py:3044 part/models.py:3288 #: part/templates/part/part_base.html:263 -#: templates/InvenTree/settings/settings.html:229 +#: templates/InvenTree/settings/settings.html:230 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1513 templates/js/translated/part.js:1770 +#: templates/js/translated/part.js:1784 templates/js/translated/part.js:2051 msgid "Category" msgstr "" -#: part/models.py:847 +#: part/models.py:848 msgid "Part category" msgstr "" -#: part/models.py:853 +#: part/models.py:854 msgid "Internal Part Number" msgstr "" -#: part/models.py:859 +#: part/models.py:860 msgid "Part revision or version number" msgstr "" -#: part/models.py:885 +#: part/models.py:886 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:930 part/templates/part/part_base.html:369 +#: part/models.py:931 part/templates/part/part_base.html:383 msgid "Default Supplier" msgstr "" -#: part/models.py:931 +#: part/models.py:932 msgid "Default supplier part" msgstr "" -#: part/models.py:938 +#: part/models.py:939 msgid "Default Expiry" msgstr "" -#: part/models.py:939 +#: part/models.py:940 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:945 +#: part/models.py:946 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:952 +#: part/models.py:953 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:958 +#: part/models.py:959 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:964 +#: part/models.py:965 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:970 +#: part/models.py:971 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:975 +#: part/models.py:976 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:980 +#: part/models.py:981 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:985 +#: part/models.py:986 msgid "Is this part active?" msgstr "" -#: part/models.py:990 +#: part/models.py:991 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:992 +#: part/models.py:993 msgid "Part notes" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "BOM checksum" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:997 +#: part/models.py:998 msgid "BOM checked by" msgstr "" -#: part/models.py:999 +#: part/models.py:1000 msgid "BOM checked date" msgstr "" -#: part/models.py:1003 +#: part/models.py:1004 msgid "Creation User" msgstr "" -#: part/models.py:1863 +#: part/models.py:1010 part/templates/part/part_base.html:345 +#: stock/templates/stock/item_base.html:445 +#: templates/js/translated/part.js:1901 +msgid "Last Stocktake" +msgstr "" + +#: part/models.py:1869 msgid "Sell multiple" msgstr "" -#: part/models.py:2763 +#: part/models.py:2781 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:2768 +#: part/models.py:2786 templates/js/translated/part.js:806 msgid "Updated" msgstr "" -#: part/models.py:2769 +#: part/models.py:2787 msgid "Timestamp of last pricing update" msgstr "" -#: part/models.py:2786 +#: part/models.py:2804 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:2787 +#: part/models.py:2805 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:2792 +#: part/models.py:2810 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:2793 +#: part/models.py:2811 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:2798 +#: part/models.py:2816 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:2799 +#: part/models.py:2817 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:2804 +#: part/models.py:2822 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:2805 +#: part/models.py:2823 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:2810 +#: part/models.py:2828 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:2811 +#: part/models.py:2829 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:2816 +#: part/models.py:2834 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:2817 +#: part/models.py:2835 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:2822 +#: part/models.py:2840 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:2823 +#: part/models.py:2841 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:2828 +#: part/models.py:2846 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:2829 +#: part/models.py:2847 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:2834 +#: part/models.py:2852 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:2835 +#: part/models.py:2853 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:2840 +#: part/models.py:2858 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:2841 +#: part/models.py:2859 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:2847 +#: part/models.py:2865 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:2853 +#: part/models.py:2871 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:2858 +#: part/models.py:2876 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:2859 +#: part/models.py:2877 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:2864 +#: part/models.py:2882 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:2865 +#: part/models.py:2883 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:2870 +#: part/models.py:2888 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:2871 +#: part/models.py:2889 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:2876 +#: part/models.py:2894 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:2877 +#: part/models.py:2895 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3013 +#: part/models.py:2913 +msgid "Part for stocktake" +msgstr "" + +#: part/models.py:2920 +msgid "Total available stock at time of stocktake" +msgstr "" + +#: part/models.py:2924 part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:63 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:2043 templates/js/translated/part.js:887 +#: templates/js/translated/pricing.js:537 +#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2511 +msgid "Date" +msgstr "" + +#: part/models.py:2925 +msgid "Date stocktake was performed" +msgstr "" + +#: part/models.py:2933 +msgid "Additional notes" +msgstr "" + +#: part/models.py:2941 +msgid "User who performed this stocktake" +msgstr "" + +#: part/models.py:3091 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3030 +#: part/models.py:3108 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:3050 templates/js/translated/part.js:2116 -#: templates/js/translated/stock.js:1379 +#: part/models.py:3128 templates/js/translated/part.js:2397 +#: templates/js/translated/stock.js:1378 msgid "Test Name" msgstr "" -#: part/models.py:3051 +#: part/models.py:3129 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3056 +#: part/models.py:3134 msgid "Test Description" msgstr "" -#: part/models.py:3057 +#: part/models.py:3135 msgid "Enter description for this test" msgstr "" -#: part/models.py:3062 templates/js/translated/part.js:2125 +#: part/models.py:3140 templates/js/translated/part.js:2406 #: templates/js/translated/table_filters.js:322 msgid "Required" msgstr "" -#: part/models.py:3063 +#: part/models.py:3141 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3068 templates/js/translated/part.js:2133 +#: part/models.py:3146 templates/js/translated/part.js:2414 msgid "Requires Value" msgstr "" -#: part/models.py:3069 +#: part/models.py:3147 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3074 templates/js/translated/part.js:2140 +#: part/models.py:3152 templates/js/translated/part.js:2421 msgid "Requires Attachment" msgstr "" -#: part/models.py:3075 +#: part/models.py:3153 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3116 +#: part/models.py:3194 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3124 +#: part/models.py:3202 msgid "Parameter Name" msgstr "" -#: part/models.py:3128 +#: part/models.py:3206 msgid "Parameter Units" msgstr "" -#: part/models.py:3133 +#: part/models.py:3211 msgid "Parameter description" msgstr "" -#: part/models.py:3166 +#: part/models.py:3244 msgid "Parent Part" msgstr "" -#: part/models.py:3168 part/models.py:3216 part/models.py:3217 -#: templates/InvenTree/settings/settings.html:224 +#: part/models.py:3246 part/models.py:3294 part/models.py:3295 +#: templates/InvenTree/settings/settings.html:225 msgid "Parameter Template" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Data" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Parameter Value" msgstr "" -#: part/models.py:3221 templates/InvenTree/settings/settings.html:233 +#: part/models.py:3299 templates/InvenTree/settings/settings.html:234 msgid "Default Value" msgstr "" -#: part/models.py:3222 +#: part/models.py:3300 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3259 +#: part/models.py:3337 msgid "Part ID or part name" msgstr "" -#: part/models.py:3263 +#: part/models.py:3341 msgid "Unique part ID value" msgstr "" -#: part/models.py:3271 +#: part/models.py:3349 msgid "Part IPN value" msgstr "" -#: part/models.py:3274 +#: part/models.py:3352 msgid "Level" msgstr "" -#: part/models.py:3275 +#: part/models.py:3353 msgid "BOM level" msgstr "" -#: part/models.py:3344 +#: part/models.py:3422 msgid "Select parent part" msgstr "" -#: part/models.py:3352 +#: part/models.py:3430 msgid "Sub part" msgstr "" -#: part/models.py:3353 +#: part/models.py:3431 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:3359 +#: part/models.py:3437 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:3363 part/templates/part/upload_bom.html:58 +#: part/models.py:3441 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:933 templates/js/translated/bom.js:986 #: templates/js/translated/build.js:1868 #: templates/js/translated/table_filters.js:84 @@ -5236,189 +5303,189 @@ msgstr "" msgid "Optional" msgstr "" -#: part/models.py:3364 +#: part/models.py:3442 msgid "This BOM item is optional" msgstr "" -#: part/models.py:3369 templates/js/translated/bom.js:929 +#: part/models.py:3447 templates/js/translated/bom.js:929 #: templates/js/translated/bom.js:995 templates/js/translated/build.js:1859 #: templates/js/translated/table_filters.js:88 msgid "Consumable" msgstr "" -#: part/models.py:3370 +#: part/models.py:3448 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:3374 part/templates/part/upload_bom.html:55 +#: part/models.py:3452 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:3375 +#: part/models.py:3453 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:3378 +#: part/models.py:3456 msgid "BOM item reference" msgstr "" -#: part/models.py:3381 +#: part/models.py:3459 msgid "BOM item notes" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "Checksum" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "BOM line checksum" msgstr "" -#: part/models.py:3387 part/templates/part/upload_bom.html:57 +#: part/models.py:3465 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1012 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:108 msgid "Inherited" msgstr "" -#: part/models.py:3388 +#: part/models.py:3466 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:3393 part/templates/part/upload_bom.html:56 +#: part/models.py:3471 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1004 msgid "Allow Variants" msgstr "" -#: part/models.py:3394 +#: part/models.py:3472 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:3480 stock/models.py:558 +#: part/models.py:3558 stock/models.py:558 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:3489 part/models.py:3491 +#: part/models.py:3567 part/models.py:3569 msgid "Sub part must be specified" msgstr "" -#: part/models.py:3618 +#: part/models.py:3696 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:3639 +#: part/models.py:3717 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:3652 +#: part/models.py:3730 msgid "Parent BOM item" msgstr "" -#: part/models.py:3660 +#: part/models.py:3738 msgid "Substitute part" msgstr "" -#: part/models.py:3675 +#: part/models.py:3753 msgid "Part 1" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Part 2" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Select Related Part" msgstr "" -#: part/models.py:3697 +#: part/models.py:3775 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:3701 +#: part/models.py:3779 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:155 part/serializers.py:183 stock/serializers.py:183 +#: part/serializers.py:157 part/serializers.py:185 stock/serializers.py:183 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:543 +#: part/serializers.py:584 msgid "Update" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:585 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:854 +#: part/serializers.py:895 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:862 +#: part/serializers.py:903 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:863 +#: part/serializers.py:904 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:868 +#: part/serializers.py:909 msgid "Include Inherited" msgstr "" -#: part/serializers.py:869 +#: part/serializers.py:910 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:874 +#: part/serializers.py:915 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:875 +#: part/serializers.py:916 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:921 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:881 +#: part/serializers.py:922 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:962 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:922 +#: part/serializers.py:963 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:952 +#: part/serializers.py:993 msgid "No part column specified" msgstr "" -#: part/serializers.py:995 +#: part/serializers.py:1036 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:998 +#: part/serializers.py:1039 msgid "No matching part found" msgstr "" -#: part/serializers.py:1001 +#: part/serializers.py:1042 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1010 +#: part/serializers.py:1051 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1059 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1039 +#: part/serializers.py:1080 msgid "At least one BOM item is required" msgstr "" @@ -5450,7 +5517,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:267 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:290 msgid "BOM actions" msgstr "" @@ -5507,8 +5574,8 @@ msgstr "" msgid "New Part" msgstr "" -#: part/templates/part/category.html:169 part/templates/part/detail.html:366 -#: part/templates/part/detail.html:397 +#: part/templates/part/category.html:169 part/templates/part/detail.html:389 +#: part/templates/part/detail.html:420 msgid "Options" msgstr "" @@ -5556,7 +5623,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:404 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:407 msgid "Duplicate Part" msgstr "" @@ -5593,118 +5660,128 @@ msgstr "" msgid "Refresh" msgstr "" -#: part/templates/part/detail.html:59 +#: part/templates/part/detail.html:65 +msgid "Add stocktake information" +msgstr "" + +#: part/templates/part/detail.html:66 part/templates/part/part_sidebar.html:49 +#: stock/admin.py:107 templates/js/translated/stock.js:1905 +msgid "Stocktake" +msgstr "" + +#: part/templates/part/detail.html:82 msgid "Part Test Templates" msgstr "" -#: part/templates/part/detail.html:64 +#: part/templates/part/detail.html:87 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:144 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:141 +#: part/templates/part/detail.html:164 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:156 +#: part/templates/part/detail.html:179 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:160 +#: part/templates/part/detail.html:183 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:161 +#: part/templates/part/detail.html:184 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:188 +#: part/templates/part/detail.html:211 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:225 part/templates/part/part_sidebar.html:52 +#: part/templates/part/detail.html:248 part/templates/part/part_sidebar.html:57 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:229 part/templates/part/detail.html:230 +#: part/templates/part/detail.html:252 part/templates/part/detail.html:253 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:250 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:273 part/templates/part/part_sidebar.html:17 +#: report/templates/report/inventree_bill_of_materials_report.html:100 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:255 +#: part/templates/part/detail.html:278 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:259 templates/js/translated/bom.js:309 +#: part/templates/part/detail.html:282 templates/js/translated/bom.js:309 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:261 +#: part/templates/part/detail.html:284 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:271 +#: part/templates/part/detail.html:294 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:272 templates/js/translated/part.js:276 +#: part/templates/part/detail.html:295 templates/js/translated/part.js:279 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:273 +#: part/templates/part/detail.html:296 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:278 part/templates/part/detail.html:279 +#: part/templates/part/detail.html:301 part/templates/part/detail.html:302 #: templates/js/translated/bom.js:1268 templates/js/translated/bom.js:1269 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:292 +#: part/templates/part/detail.html:315 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:310 +#: part/templates/part/detail.html:333 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:337 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:360 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:353 +#: part/templates/part/detail.html:376 msgid "Part Suppliers" msgstr "" -#: part/templates/part/detail.html:383 +#: part/templates/part/detail.html:406 msgid "Part Manufacturers" msgstr "" -#: part/templates/part/detail.html:399 +#: part/templates/part/detail.html:422 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:696 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:704 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:796 msgid "Add Test Result Template" msgstr "" #: part/templates/part/import_wizard/ajax_part_upload.html:29 #: part/templates/part/import_wizard/part_upload.html:14 -msgid "Unsuffitient privileges." +msgid "Insufficient privileges." msgstr "" #: part/templates/part/import_wizard/part_upload.html:8 @@ -5715,6 +5792,34 @@ msgstr "" msgid "Import Parts from File" msgstr "" +#: part/templates/part/import_wizard/part_upload.html:31 +msgid "Requirements for part import" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "The part import file must contain the required named columns as provided in the " +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:89 +msgid "Download Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:92 +#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 +#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 +msgid "Format" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:93 +#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 +#: templates/js/translated/order.js:999 +msgid "Select file format" +msgstr "" + #: part/templates/part/part_app_base.html:12 msgid "Part List" msgstr "" @@ -5804,12 +5909,12 @@ msgstr "" #: templates/js/translated/company.js:660 #: templates/js/translated/company.js:921 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:677 templates/js/translated/part.js:755 +#: templates/js/translated/part.js:680 templates/js/translated/part.js:1026 msgid "Inactive" msgstr "" #: part/templates/part/part_base.html:165 -#: part/templates/part/part_base.html:666 +#: part/templates/part/part_base.html:680 msgid "Show Part Details" msgstr "" @@ -5837,38 +5942,38 @@ msgid "Minimum stock level" msgstr "" #: part/templates/part/part_base.html:330 templates/js/translated/bom.js:1032 -#: templates/js/translated/part.js:798 templates/js/translated/part.js:1604 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:1875 #: templates/js/translated/pricing.js:124 #: templates/js/translated/pricing.js:762 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:345 +#: part/templates/part/part_base.html:359 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:349 +#: part/templates/part/part_base.html:363 #: stock/templates/stock/item_base.html:331 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:449 +#: part/templates/part/part_base.html:463 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:495 +#: part/templates/part/part_base.html:509 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:512 +#: part/templates/part/part_base.html:526 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:564 +#: part/templates/part/part_base.html:578 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:660 +#: part/templates/part/part_base.html:674 msgid "Hide Part Details" msgstr "" @@ -5920,15 +6025,6 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" -#: part/templates/part/part_scheduling.html:13 -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:63 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:2043 templates/js/translated/pricing.js:537 -#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2516 -msgid "Date" -msgstr "" - #: part/templates/part/part_scheduling.html:14 msgid "Scheduled Quantity" msgstr "" @@ -5941,7 +6037,7 @@ msgstr "" msgid "Scheduling" msgstr "" -#: part/templates/part/part_sidebar.html:48 +#: part/templates/part/part_sidebar.html:53 msgid "Test Templates" msgstr "" @@ -5960,7 +6056,7 @@ msgstr "" #: part/templates/part/prices.html:25 stock/admin.py:106 #: stock/templates/stock/item_base.html:440 #: templates/js/translated/company.js:1039 -#: templates/js/translated/stock.js:1940 +#: templates/js/translated/stock.js:1935 msgid "Last Updated" msgstr "" @@ -6023,8 +6119,8 @@ msgstr "" msgid "Add Sell Price Break" msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:639 -#: templates/js/translated/part.js:1373 templates/js/translated/part.js:1375 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:1644 templates/js/translated/part.js:1646 msgid "No Stock" msgstr "" @@ -6087,27 +6183,32 @@ msgstr "" msgid "{title} v{version}" msgstr "" -#: part/views.py:109 +#: part/views.py:111 msgid "Match References" msgstr "" -#: part/views.py:354 +#: part/views.py:239 +#, python-brace-format +msgid "Can't import part {name} because there is no category assigned" +msgstr "" + +#: part/views.py:378 msgid "Part QR Code" msgstr "" -#: part/views.py:372 +#: part/views.py:396 msgid "Select Part Image" msgstr "" -#: part/views.py:398 +#: part/views.py:422 msgid "Updated part image" msgstr "" -#: part/views.py:401 +#: part/views.py:425 msgid "Part image not found" msgstr "" -#: part/views.py:493 +#: part/views.py:517 msgid "Part Pricing" msgstr "" @@ -6156,28 +6257,48 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:29 -#: plugin/builtin/integration/core_notifications.py:31 +#: plugin/builtin/integration/core_notifications.py:33 msgid "InvenTree contributors" msgstr "" -#: plugin/builtin/integration/core_notifications.py:30 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:32 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notificaton methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:37 -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:80 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:38 -#: plugin/builtin/integration/core_notifications.py:57 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:81 msgid "Allow sending of emails for event notifications" msgstr "" +#: plugin/builtin/integration/core_notifications.py:45 +msgid "Enable slack notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:46 +msgid "Allow sending of slack channel messages for event notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:51 +msgid "Slack incoming webhook url" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:52 +msgid "URL that is used to send messages to a slack channel" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:162 +msgid "Open link" +msgstr "" + #: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" @@ -6409,6 +6530,10 @@ msgstr "" msgid "Asset file description" msgstr "" +#: report/templates/report/inventree_bill_of_materials_report.html:133 +msgid "Materials needed" +msgstr "" + #: report/templates/report/inventree_build_order_base.html:146 msgid "Required For" msgstr "" @@ -6427,7 +6552,7 @@ msgstr "" #: templates/js/translated/build.js:1244 templates/js/translated/build.js:1745 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:121 templates/js/translated/order.js:3611 -#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:522 +#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:521 msgid "Serial Number" msgstr "" @@ -6459,8 +6584,9 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: stock/admin.py:87 templates/js/translated/stock.js:642 -#: templates/js/translated/stock.js:812 templates/js/translated/stock.js:2765 +#: stock/admin.py:87 templates/js/translated/part.js:749 +#: templates/js/translated/stock.js:641 templates/js/translated/stock.js:811 +#: templates/js/translated/stock.js:2760 msgid "Serial" msgstr "" @@ -6515,13 +6641,9 @@ msgstr "" msgid "Purchase Order ID" msgstr "" -#: stock/admin.py:107 templates/js/translated/stock.js:1910 -msgid "Stocktake" -msgstr "" - #: stock/admin.py:108 stock/models.py:764 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/stock.js:1924 +#: templates/js/translated/stock.js:1919 msgid "Expiry Date" msgstr "" @@ -6936,7 +7058,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2912 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2907 msgid "Install Stock Item" msgstr "" @@ -6944,7 +7066,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1561 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1560 msgid "Add Test Result" msgstr "" @@ -7117,10 +7239,6 @@ msgstr "" msgid "Stale" msgstr "" -#: stock/templates/stock/item_base.html:445 -msgid "Last Stocktake" -msgstr "" - #: stock/templates/stock/item_base.html:449 msgid "No stocktake performed" msgstr "" @@ -7394,7 +7512,8 @@ msgstr "" #: templates/InvenTree/notifications/notifications.html:10 #: templates/InvenTree/notifications/sidebar.html:5 -#: templates/InvenTree/settings/sidebar.html:17 templates/notifications.html:5 +#: templates/InvenTree/settings/sidebar.html:17 +#: templates/InvenTree/settings/sidebar.html:35 templates/notifications.html:5 msgid "Notifications" msgstr "" @@ -7475,6 +7594,14 @@ msgstr "" msgid "Open in new tab" msgstr "" +#: templates/InvenTree/settings/notifications.html:9 +msgid "Global Notification Settings" +msgstr "" + +#: templates/InvenTree/settings/notifications.html:18 +msgid "Slug" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -7492,7 +7619,7 @@ msgid "Part Parameter Templates" msgstr "" #: templates/InvenTree/settings/plugin.html:10 -#: templates/InvenTree/settings/sidebar.html:55 +#: templates/InvenTree/settings/sidebar.html:57 msgid "Plugin Settings" msgstr "" @@ -7501,7 +7628,7 @@ msgid "Changing the settings below require you to immediately restart the server msgstr "" #: templates/InvenTree/settings/plugin.html:38 -#: templates/InvenTree/settings/sidebar.html:57 +#: templates/InvenTree/settings/sidebar.html:59 msgid "Plugins" msgstr "" @@ -7669,67 +7796,67 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:117 +#: templates/InvenTree/settings/settings.html:118 msgid "Edit Plugin Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:119 +#: templates/InvenTree/settings/settings.html:120 msgid "Edit Notification Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:122 +#: templates/InvenTree/settings/settings.html:123 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:124 +#: templates/InvenTree/settings/settings.html:125 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:214 +#: templates/InvenTree/settings/settings.html:215 msgid "No category parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:236 -#: templates/InvenTree/settings/settings.html:361 -msgid "Edit Template" -msgstr "" - #: templates/InvenTree/settings/settings.html:237 #: templates/InvenTree/settings/settings.html:362 +msgid "Edit Template" +msgstr "" + +#: templates/InvenTree/settings/settings.html:238 +#: templates/InvenTree/settings/settings.html:363 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:277 +#: templates/InvenTree/settings/settings.html:278 msgid "Create Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:322 +#: templates/InvenTree/settings/settings.html:323 msgid "Delete Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:334 +#: templates/InvenTree/settings/settings.html:335 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:338 +#: templates/InvenTree/settings/settings.html:339 #: templates/js/translated/news.js:29 #: templates/js/translated/notification.js:36 msgid "ID" msgstr "" -#: templates/InvenTree/settings/settings.html:380 +#: templates/InvenTree/settings/settings.html:381 msgid "Create Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:399 +#: templates/InvenTree/settings/settings.html:400 msgid "Edit Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:413 +#: templates/InvenTree/settings/settings.html:414 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/InvenTree/settings/settings.html:421 +#: templates/InvenTree/settings/settings.html:422 msgid "Delete Part Parameter Template" msgstr "" @@ -7758,12 +7885,12 @@ msgid "Search Settings" msgstr "" #: templates/InvenTree/settings/sidebar.html:19 -#: templates/InvenTree/settings/sidebar.html:37 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Label Printing" msgstr "" #: templates/InvenTree/settings/sidebar.html:21 -#: templates/InvenTree/settings/sidebar.html:39 +#: templates/InvenTree/settings/sidebar.html:41 msgid "Reporting" msgstr "" @@ -7775,7 +7902,7 @@ msgstr "" msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:43 +#: templates/InvenTree/settings/sidebar.html:45 msgid "Categories" msgstr "" @@ -7945,64 +8072,64 @@ msgstr "" msgid "Do you really want to remove the selected email address?" msgstr "" -#: templates/InvenTree/settings/user_display.html:28 +#: templates/InvenTree/settings/user_display.html:29 msgid "Theme Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:38 +#: templates/InvenTree/settings/user_display.html:39 msgid "Select theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:49 +#: templates/InvenTree/settings/user_display.html:50 msgid "Set Theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:57 +#: templates/InvenTree/settings/user_display.html:58 msgid "Language Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:66 +#: templates/InvenTree/settings/user_display.html:67 msgid "Select language" msgstr "" -#: templates/InvenTree/settings/user_display.html:82 +#: templates/InvenTree/settings/user_display.html:83 #, python-format msgid "%(lang_translated)s%% translated" msgstr "" -#: templates/InvenTree/settings/user_display.html:84 +#: templates/InvenTree/settings/user_display.html:85 msgid "No translations available" msgstr "" -#: templates/InvenTree/settings/user_display.html:91 +#: templates/InvenTree/settings/user_display.html:92 msgid "Set Language" msgstr "" -#: templates/InvenTree/settings/user_display.html:94 +#: templates/InvenTree/settings/user_display.html:95 msgid "Some languages are not complete" msgstr "" -#: templates/InvenTree/settings/user_display.html:96 +#: templates/InvenTree/settings/user_display.html:97 msgid "Show only sufficent" msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "and hidden." msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "Show them too" msgstr "" -#: templates/InvenTree/settings/user_display.html:105 +#: templates/InvenTree/settings/user_display.html:106 msgid "Help the translation efforts!" msgstr "" -#: templates/InvenTree/settings/user_display.html:106 +#: templates/InvenTree/settings/user_display.html:107 msgid "Native language translation of the web application is community contributed via crowdin. Contributions are welcomed and encouraged." msgstr "" -#: templates/InvenTree/settings/user_display.html:107 +#: templates/InvenTree/settings/user_display.html:108 msgid "InvenTree Translation Project" msgstr "" @@ -8080,7 +8207,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:646 +#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:649 msgid "Confirm" msgstr "אשר" @@ -8313,7 +8440,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 -#: templates/js/translated/part.js:2445 +#: templates/js/translated/part.js:2726 msgid "Minimum Quantity" msgstr "" @@ -8466,7 +8593,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1089 +#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1088 msgid "Remove stock item" msgstr "" @@ -8548,16 +8675,6 @@ msgstr "" msgid "Download BOM Template" msgstr "" -#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 -#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 -msgid "Format" -msgstr "" - -#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 -#: templates/js/translated/order.js:999 -msgid "Select file format" -msgstr "" - #: templates/js/translated/bom.js:320 msgid "Multi Level BOM" msgstr "" @@ -8688,7 +8805,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:1145 templates/js/translated/build.js:1923 -#: templates/js/translated/part.js:790 templates/js/translated/part.js:1572 +#: templates/js/translated/part.js:1061 templates/js/translated/part.js:1843 msgid "Includes variant stock" msgstr "" @@ -8773,13 +8890,13 @@ msgstr "" msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:317 templates/js/translated/stock.js:95 -#: templates/js/translated/stock.js:237 +#: templates/js/translated/build.js:317 templates/js/translated/stock.js:94 +#: templates/js/translated/stock.js:236 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:319 templates/js/translated/stock.js:97 -#: templates/js/translated/stock.js:239 +#: templates/js/translated/build.js:319 templates/js/translated/stock.js:96 +#: templates/js/translated/stock.js:238 msgid "Latest serial number" msgstr "" @@ -8987,9 +9104,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1466 -#: templates/js/translated/part.js:2003 templates/js/translated/stock.js:1725 -#: templates/js/translated/stock.js:2428 +#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1737 +#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1724 +#: templates/js/translated/stock.js:2423 msgid "Select" msgstr "" @@ -9001,7 +9118,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2695 +#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2690 msgid "No user information" msgstr "" @@ -9074,34 +9191,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:652 -#: templates/js/translated/company.js:913 templates/js/translated/part.js:661 -#: templates/js/translated/part.js:747 +#: templates/js/translated/company.js:913 templates/js/translated/part.js:664 +#: templates/js/translated/part.js:1018 msgid "Template part" msgstr "" #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:917 templates/js/translated/part.js:665 -#: templates/js/translated/part.js:751 +#: templates/js/translated/company.js:917 templates/js/translated/part.js:668 +#: templates/js/translated/part.js:1022 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:784 templates/js/translated/part.js:870 +#: templates/js/translated/company.js:784 templates/js/translated/part.js:1141 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:821 templates/js/translated/part.js:912 +#: templates/js/translated/company.js:821 templates/js/translated/part.js:1183 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:822 templates/js/translated/part.js:913 +#: templates/js/translated/company.js:822 templates/js/translated/part.js:1184 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:841 templates/js/translated/part.js:930 +#: templates/js/translated/company.js:841 templates/js/translated/part.js:1201 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:852 templates/js/translated/part.js:942 +#: templates/js/translated/company.js:852 templates/js/translated/part.js:1213 msgid "Delete Parameter" msgstr "" @@ -9181,61 +9298,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:369 templates/js/translated/forms.js:384 -#: templates/js/translated/forms.js:398 templates/js/translated/forms.js:412 +#: templates/js/translated/forms.js:372 templates/js/translated/forms.js:387 +#: templates/js/translated/forms.js:401 templates/js/translated/forms.js:415 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:371 +#: templates/js/translated/forms.js:374 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:386 +#: templates/js/translated/forms.js:389 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:400 +#: templates/js/translated/forms.js:403 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:414 +#: templates/js/translated/forms.js:417 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:672 +#: templates/js/translated/forms.js:675 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:773 +#: templates/js/translated/forms.js:776 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1266 templates/modals.html:19 +#: templates/js/translated/forms.js:1269 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1703 +#: templates/js/translated/forms.js:1706 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1919 templates/search.html:29 +#: templates/js/translated/forms.js:1922 templates/search.html:29 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2172 +#: templates/js/translated/forms.js:2175 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:2640 +#: templates/js/translated/forms.js:2643 msgid "Select Columns" msgstr "" @@ -9256,7 +9373,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1113 +#: templates/js/translated/stock.js:1112 msgid "Select Stock Items" msgstr "" @@ -9590,7 +9707,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2184 +#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2179 msgid "Stock Status" msgstr "" @@ -9614,7 +9731,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1982 templates/js/translated/part.js:983 +#: templates/js/translated/order.js:1982 templates/js/translated/part.js:1254 msgid "No purchase orders found" msgstr "" @@ -9647,8 +9764,8 @@ msgstr "" msgid "Total" msgstr "" -#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1085 -#: templates/js/translated/part.js:1137 +#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1356 +#: templates/js/translated/part.js:1408 msgid "Total Quantity" msgstr "" @@ -9666,11 +9783,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2388 templates/js/translated/order.js:3900 -#: templates/js/translated/part.js:1121 +#: templates/js/translated/part.js:1392 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1166 +#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1437 msgid "Receive line item" msgstr "" @@ -9791,7 +9908,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3623 templates/js/translated/order.js:3712 -#: templates/js/translated/stock.js:1641 +#: templates/js/translated/stock.js:1640 msgid "Shipped to customer" msgstr "" @@ -9835,334 +9952,358 @@ msgstr "" msgid "No matching lines" msgstr "" -#: templates/js/translated/part.js:52 +#: templates/js/translated/part.js:55 msgid "Part Attributes" msgstr "" -#: templates/js/translated/part.js:56 +#: templates/js/translated/part.js:59 msgid "Part Creation Options" msgstr "" -#: templates/js/translated/part.js:60 +#: templates/js/translated/part.js:63 msgid "Part Duplication Options" msgstr "" -#: templates/js/translated/part.js:64 +#: templates/js/translated/part.js:67 msgid "Supplier Options" msgstr "" -#: templates/js/translated/part.js:78 +#: templates/js/translated/part.js:81 msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:168 +#: templates/js/translated/part.js:171 msgid "Create Initial Stock" msgstr "" -#: templates/js/translated/part.js:169 +#: templates/js/translated/part.js:172 msgid "Create an initial stock item for this part" msgstr "" -#: templates/js/translated/part.js:176 +#: templates/js/translated/part.js:179 msgid "Initial Stock Quantity" msgstr "" -#: templates/js/translated/part.js:177 +#: templates/js/translated/part.js:180 msgid "Specify initial stock quantity for this part" msgstr "" -#: templates/js/translated/part.js:184 +#: templates/js/translated/part.js:187 msgid "Select destination stock location" msgstr "" -#: templates/js/translated/part.js:202 +#: templates/js/translated/part.js:205 msgid "Copy Category Parameters" msgstr "" -#: templates/js/translated/part.js:203 +#: templates/js/translated/part.js:206 msgid "Copy parameter templates from selected part category" msgstr "" -#: templates/js/translated/part.js:211 +#: templates/js/translated/part.js:214 msgid "Add Supplier Data" msgstr "" -#: templates/js/translated/part.js:212 +#: templates/js/translated/part.js:215 msgid "Create initial supplier data for this part" msgstr "" -#: templates/js/translated/part.js:268 +#: templates/js/translated/part.js:271 msgid "Copy Image" msgstr "" -#: templates/js/translated/part.js:269 +#: templates/js/translated/part.js:272 msgid "Copy image from original part" msgstr "" -#: templates/js/translated/part.js:277 +#: templates/js/translated/part.js:280 msgid "Copy bill of materials from original part" msgstr "" -#: templates/js/translated/part.js:284 +#: templates/js/translated/part.js:287 msgid "Copy Parameters" msgstr "" -#: templates/js/translated/part.js:285 +#: templates/js/translated/part.js:288 msgid "Copy parameter data from original part" msgstr "" -#: templates/js/translated/part.js:298 +#: templates/js/translated/part.js:301 msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:313 templates/js/translated/stock.js:122 +#: templates/js/translated/part.js:316 templates/js/translated/stock.js:121 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:329 +#: templates/js/translated/part.js:332 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:342 +#: templates/js/translated/part.js:345 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:347 +#: templates/js/translated/part.js:350 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:359 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:360 +#: templates/js/translated/part.js:363 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:368 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:394 +#: templates/js/translated/part.js:397 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:396 +#: templates/js/translated/part.js:399 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:407 +#: templates/js/translated/part.js:410 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:459 +#: templates/js/translated/part.js:462 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:460 +#: templates/js/translated/part.js:463 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:477 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:476 +#: templates/js/translated/part.js:479 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:477 +#: templates/js/translated/part.js:480 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:478 +#: templates/js/translated/part.js:481 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:485 +#: templates/js/translated/part.js:488 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:521 +#: templates/js/translated/part.js:524 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:523 +#: templates/js/translated/part.js:526 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:531 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:530 +#: templates/js/translated/part.js:533 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:547 +#: templates/js/translated/part.js:550 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:560 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:560 +#: templates/js/translated/part.js:563 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:585 +#: templates/js/translated/part.js:588 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1554 +#: templates/js/translated/part.js:612 templates/js/translated/part.js:1825 #: templates/js/translated/table_filters.js:488 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:622 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:653 templates/js/translated/part.js:739 +#: templates/js/translated/part.js:656 templates/js/translated/part.js:1010 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:657 templates/js/translated/part.js:743 +#: templates/js/translated/part.js:660 templates/js/translated/part.js:1014 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:669 +#: templates/js/translated/part.js:672 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:673 +#: templates/js/translated/part.js:676 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:815 +#: templates/js/translated/part.js:761 +msgid "Stock item has not been checked recently" +msgstr "" + +#: templates/js/translated/part.js:769 +msgid "Update item" +msgstr "" + +#: templates/js/translated/part.js:770 +msgid "Delete item" +msgstr "" + +#: templates/js/translated/part.js:871 +msgid "No stocktake information available" +msgstr "" + +#: templates/js/translated/part.js:910 templates/js/translated/part.js:933 +msgid "Edit Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:914 templates/js/translated/part.js:945 +msgid "Delete Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:1086 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1236 +#: templates/js/translated/part.js:1507 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1260 +#: templates/js/translated/part.js:1531 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1327 templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1598 templates/js/translated/part.js:1936 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1521 +#: templates/js/translated/part.js:1792 msgid "No category" msgstr "" -#: templates/js/translated/part.js:1552 +#: templates/js/translated/part.js:1823 msgid "No stock" msgstr "" -#: templates/js/translated/part.js:1576 +#: templates/js/translated/part.js:1847 msgid "Allocated to build orders" msgstr "" -#: templates/js/translated/part.js:1580 +#: templates/js/translated/part.js:1851 msgid "Allocated to sales orders" msgstr "" -#: templates/js/translated/part.js:1679 templates/js/translated/part.js:1922 -#: templates/js/translated/stock.js:2387 +#: templates/js/translated/part.js:1960 templates/js/translated/part.js:2203 +#: templates/js/translated/stock.js:2382 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1695 +#: templates/js/translated/part.js:1976 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1761 +#: templates/js/translated/part.js:2042 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1766 +#: templates/js/translated/part.js:2047 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1771 +#: templates/js/translated/part.js:2052 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1784 +#: templates/js/translated/part.js:2065 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1942 templates/js/translated/stock.js:2407 +#: templates/js/translated/part.js:2223 templates/js/translated/stock.js:2402 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2022 +#: templates/js/translated/part.js:2303 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2038 +#: templates/js/translated/part.js:2319 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2383 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2153 templates/js/translated/stock.js:1338 +#: templates/js/translated/part.js:2434 templates/js/translated/stock.js:1337 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2154 templates/js/translated/stock.js:1339 -#: templates/js/translated/stock.js:1599 +#: templates/js/translated/part.js:2435 templates/js/translated/stock.js:1338 +#: templates/js/translated/stock.js:1598 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2441 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2182 +#: templates/js/translated/part.js:2463 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2196 +#: templates/js/translated/part.js:2477 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2277 templates/js/translated/part.js:2278 +#: templates/js/translated/part.js:2558 templates/js/translated/part.js:2559 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2280 +#: templates/js/translated/part.js:2561 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:2286 +#: templates/js/translated/part.js:2567 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:2336 +#: templates/js/translated/part.js:2617 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2623 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:2438 +#: templates/js/translated/part.js:2719 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2454 +#: templates/js/translated/part.js:2735 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:2499 +#: templates/js/translated/part.js:2780 msgid "Minimum Stock Level" msgstr "" @@ -10290,388 +10431,388 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:74 +#: templates/js/translated/stock.js:73 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:104 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:114 +#: templates/js/translated/stock.js:113 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:148 +#: templates/js/translated/stock.js:147 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:163 +#: templates/js/translated/stock.js:162 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:177 +#: templates/js/translated/stock.js:176 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:184 +#: templates/js/translated/stock.js:183 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:193 +#: templates/js/translated/stock.js:192 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:197 +#: templates/js/translated/stock.js:196 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:201 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:256 +#: templates/js/translated/stock.js:255 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:298 +#: templates/js/translated/stock.js:297 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:304 +#: templates/js/translated/stock.js:303 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:368 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:389 +#: templates/js/translated/stock.js:388 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:405 +#: templates/js/translated/stock.js:404 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:410 +#: templates/js/translated/stock.js:409 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:431 +#: templates/js/translated/stock.js:430 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:481 +#: templates/js/translated/stock.js:480 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:494 +#: templates/js/translated/stock.js:493 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:519 +#: templates/js/translated/stock.js:518 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:523 templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:522 templates/js/translated/stock.js:523 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:540 +#: templates/js/translated/stock.js:539 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:560 +#: templates/js/translated/stock.js:559 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:568 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:692 +#: templates/js/translated/stock.js:691 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:693 +#: templates/js/translated/stock.js:692 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:770 +#: templates/js/translated/stock.js:769 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:771 +#: templates/js/translated/stock.js:770 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:773 +#: templates/js/translated/stock.js:772 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:774 +#: templates/js/translated/stock.js:773 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:863 +#: templates/js/translated/stock.js:862 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:864 +#: templates/js/translated/stock.js:863 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:958 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:959 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:966 +#: templates/js/translated/stock.js:965 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:967 +#: templates/js/translated/stock.js:966 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:971 +#: templates/js/translated/stock.js:970 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:972 +#: templates/js/translated/stock.js:971 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:976 +#: templates/js/translated/stock.js:975 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:977 users/models.py:220 +#: templates/js/translated/stock.js:976 users/models.py:221 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:981 +#: templates/js/translated/stock.js:980 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1114 +#: templates/js/translated/stock.js:1113 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1141 +#: templates/js/translated/stock.js:1140 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1277 +#: templates/js/translated/stock.js:1276 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1279 +#: templates/js/translated/stock.js:1278 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1284 +#: templates/js/translated/stock.js:1283 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1331 +#: templates/js/translated/stock.js:1330 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1334 +#: templates/js/translated/stock.js:1333 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1360 +#: templates/js/translated/stock.js:1359 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1417 +#: templates/js/translated/stock.js:1416 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1582 +#: templates/js/translated/stock.js:1581 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1604 +#: templates/js/translated/stock.js:1603 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1633 +#: templates/js/translated/stock.js:1632 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1637 +#: templates/js/translated/stock.js:1636 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1645 +#: templates/js/translated/stock.js:1644 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1651 +#: templates/js/translated/stock.js:1650 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1820 +#: templates/js/translated/stock.js:1815 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1825 +#: templates/js/translated/stock.js:1820 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1828 +#: templates/js/translated/stock.js:1823 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1831 +#: templates/js/translated/stock.js:1826 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1833 +#: templates/js/translated/stock.js:1828 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1835 +#: templates/js/translated/stock.js:1830 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1838 +#: templates/js/translated/stock.js:1833 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1837 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1844 +#: templates/js/translated/stock.js:1839 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1846 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1853 +#: templates/js/translated/stock.js:1848 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1855 +#: templates/js/translated/stock.js:1850 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1859 +#: templates/js/translated/stock.js:1854 #: templates/js/translated/table_filters.js:216 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1989 +#: templates/js/translated/stock.js:1984 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2026 +#: templates/js/translated/stock.js:2021 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2199 +#: templates/js/translated/stock.js:2194 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2213 +#: templates/js/translated/stock.js:2208 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2214 +#: templates/js/translated/stock.js:2209 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2446 +#: templates/js/translated/stock.js:2441 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2536 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2557 +#: templates/js/translated/stock.js:2552 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2579 +#: templates/js/translated/stock.js:2574 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2598 +#: templates/js/translated/stock.js:2593 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2617 +#: templates/js/translated/stock.js:2612 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2635 +#: templates/js/translated/stock.js:2630 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2658 +#: templates/js/translated/stock.js:2653 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2666 +#: templates/js/translated/stock.js:2661 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2737 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2793 templates/js/translated/stock.js:2829 +#: templates/js/translated/stock.js:2788 templates/js/translated/stock.js:2824 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2845 +#: templates/js/translated/stock.js:2840 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2866 +#: templates/js/translated/stock.js:2861 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2867 +#: templates/js/translated/stock.js:2862 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2869 +#: templates/js/translated/stock.js:2864 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2870 +#: templates/js/translated/stock.js:2865 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:2866 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2872 +#: templates/js/translated/stock.js:2867 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2885 +#: templates/js/translated/stock.js:2880 msgid "Select part to install" msgstr "" @@ -10696,7 +10837,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:92 -#: templates/js/translated/table_filters.js:516 +#: templates/js/translated/table_filters.js:520 msgid "Has Pricing" msgstr "" @@ -10912,6 +11053,10 @@ msgstr "" msgid "Purchasable" msgstr "" +#: templates/js/translated/table_filters.js:504 +msgid "Has stocktake entries" +msgstr "" + #: templates/js/translated/tables.js:70 msgid "Display calendar view" msgstr "" @@ -11206,35 +11351,35 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:207 +#: users/models.py:208 msgid "Permission set" msgstr "" -#: users/models.py:215 +#: users/models.py:216 msgid "Group" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "View" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "Permission to view items" msgstr "" -#: users/models.py:220 +#: users/models.py:221 msgid "Permission to add items" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Change" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Permissions to edit items" msgstr "" -#: users/models.py:224 +#: users/models.py:225 msgid "Permission to delete items" msgstr "" diff --git a/InvenTree/locale/hu/LC_MESSAGES/django.po b/InvenTree/locale/hu/LC_MESSAGES/django.po index f27f69e49e..58f1650663 100644 --- a/InvenTree/locale/hu/LC_MESSAGES/django.po +++ b/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: 2022-12-30 20:46+0000\n" -"PO-Revision-Date: 2022-12-31 11:29\n" +"POT-Creation-Date: 2023-01-01 11:05+0000\n" +"PO-Revision-Date: 2023-01-01 11:26\n" "Last-Translator: \n" "Language-Team: Hungarian\n" "Language: hu_HU\n" @@ -34,7 +34,7 @@ msgstr "Dátum megadása" #: company/templates/company/sidebar.html:25 order/models.py:943 #: order/templates/order/po_sidebar.html:11 #: order/templates/order/so_sidebar.html:17 part/admin.py:27 -#: part/templates/part/part_sidebar.html:57 +#: part/models.py:2932 part/templates/part/part_sidebar.html:62 #: report/templates/report/inventree_build_order_base.html:172 #: stock/admin.py:103 stock/models.py:2061 stock/models.py:2169 #: stock/serializers.py:321 stock/serializers.py:454 stock/serializers.py:535 @@ -44,8 +44,8 @@ msgstr "Dátum megadása" #: templates/js/translated/company.js:1023 #: templates/js/translated/order.js:2435 templates/js/translated/order.js:2569 #: templates/js/translated/order.js:3067 templates/js/translated/order.js:4004 -#: templates/js/translated/order.js:4385 templates/js/translated/stock.js:1413 -#: templates/js/translated/stock.js:2020 +#: templates/js/translated/order.js:4385 templates/js/translated/part.js:882 +#: templates/js/translated/stock.js:1412 templates/js/translated/stock.js:2015 msgid "Notes" msgstr "Megjegyzések" @@ -204,18 +204,18 @@ msgstr "Melléklet" msgid "Select file to attach" msgstr "Válaszd ki a mellekelni kívánt fájlt" -#: InvenTree/models.py:412 common/models.py:2366 company/models.py:129 +#: InvenTree/models.py:412 common/models.py:2373 company/models.py:129 #: company/models.py:281 company/models.py:516 order/models.py:85 -#: order/models.py:1282 part/admin.py:25 part/models.py:865 +#: order/models.py:1282 part/admin.py:25 part/models.py:866 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: stock/admin.py:102 templates/js/translated/company.js:692 #: templates/js/translated/company.js:1012 -#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1615 +#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1886 msgid "Link" msgstr "Link" -#: InvenTree/models.py:413 build/models.py:290 part/models.py:866 +#: InvenTree/models.py:413 build/models.py:290 part/models.py:867 #: stock/models.py:716 msgid "Link to external URL" msgstr "Link külső URL-re" @@ -229,12 +229,13 @@ msgstr "Megjegyzés" msgid "File comment" msgstr "Leírás, bővebb infó" -#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1810 -#: common/models.py:1811 common/models.py:2034 common/models.py:2035 -#: common/models.py:2296 common/models.py:2297 part/models.py:2948 -#: part/models.py:2968 plugin/models.py:264 plugin/models.py:265 +#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1817 +#: common/models.py:1818 common/models.py:2041 common/models.py:2042 +#: common/models.py:2303 common/models.py:2304 part/models.py:2940 +#: part/models.py:3026 part/models.py:3046 plugin/models.py:264 +#: plugin/models.py:265 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2689 +#: templates/js/translated/stock.js:2684 msgid "User" msgstr "Felhasználó" @@ -271,19 +272,20 @@ msgstr "Hiba a fájl átnevezésekor" msgid "Invalid choice" msgstr "Érvénytelen választás" -#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2020 -#: company/models.py:363 label/models.py:101 part/models.py:809 -#: part/models.py:3123 plugin/models.py:94 report/models.py:152 +#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2027 +#: company/models.py:363 label/models.py:101 part/models.py:810 +#: part/models.py:3201 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 +#: templates/InvenTree/settings/notifications.html:17 #: templates/InvenTree/settings/plugin.html:60 #: templates/InvenTree/settings/plugin.html:104 #: templates/InvenTree/settings/plugin_settings.html:23 -#: templates/InvenTree/settings/settings.html:344 +#: templates/InvenTree/settings/settings.html:345 #: templates/js/translated/company.js:581 #: templates/js/translated/company.js:794 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:711 templates/js/translated/part.js:880 -#: templates/js/translated/part.js:2010 templates/js/translated/stock.js:2434 +#: templates/js/translated/part.js:982 templates/js/translated/part.js:1151 +#: templates/js/translated/part.js:2291 templates/js/translated/stock.js:2429 msgid "Name" msgstr "Név" @@ -292,24 +294,25 @@ msgstr "Név" #: company/models.py:522 company/templates/company/company_base.html:72 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:108 label/models.py:108 -#: order/models.py:83 part/admin.py:141 part/admin.py:222 part/models.py:832 -#: part/models.py:3132 part/templates/part/category.html:75 +#: order/models.py:83 part/admin.py:174 part/admin.py:255 part/models.py:833 +#: part/models.py:3210 part/templates/part/category.html:75 #: part/templates/part/part_base.html:172 #: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/admin.py:25 stock/templates/stock/location.html:117 +#: templates/InvenTree/settings/notifications.html:19 #: templates/InvenTree/settings/plugin_settings.html:28 -#: templates/InvenTree/settings/settings.html:355 +#: templates/InvenTree/settings/settings.html:356 #: templates/js/translated/bom.js:592 templates/js/translated/bom.js:895 #: templates/js/translated/build.js:2596 templates/js/translated/company.js:445 #: templates/js/translated/company.js:703 #: templates/js/translated/company.js:987 templates/js/translated/order.js:2030 #: templates/js/translated/order.js:2267 templates/js/translated/order.js:2845 -#: templates/js/translated/part.js:773 templates/js/translated/part.js:1223 -#: templates/js/translated/part.js:1497 templates/js/translated/part.js:2046 -#: templates/js/translated/part.js:2121 templates/js/translated/stock.js:1787 -#: templates/js/translated/stock.js:2466 templates/js/translated/stock.js:2526 +#: templates/js/translated/part.js:1044 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1768 templates/js/translated/part.js:2327 +#: templates/js/translated/part.js:2402 templates/js/translated/stock.js:1782 +#: templates/js/translated/stock.js:2461 templates/js/translated/stock.js:2521 msgid "Description" msgstr "Leírás" @@ -322,7 +325,7 @@ msgid "parent" msgstr "szülő" #: InvenTree/models.py:580 InvenTree/models.py:581 -#: templates/js/translated/part.js:2055 templates/js/translated/stock.js:2475 +#: templates/js/translated/part.js:2336 templates/js/translated/stock.js:2470 msgid "Path" msgstr "Elérési út" @@ -354,7 +357,7 @@ 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:58 part/models.py:3468 +#: InvenTree/serializers.py:58 part/models.py:3546 msgid "Must be a valid number" msgstr "Érvényes számnak kell lennie" @@ -421,107 +424,107 @@ 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/settings.py:639 +#: InvenTree/settings.py:642 msgid "Czech" msgstr "Cseh" -#: InvenTree/settings.py:640 +#: InvenTree/settings.py:643 msgid "Danish" msgstr "Dán" -#: InvenTree/settings.py:641 +#: InvenTree/settings.py:644 msgid "German" msgstr "Német" -#: InvenTree/settings.py:642 +#: InvenTree/settings.py:645 msgid "Greek" msgstr "Görög" -#: InvenTree/settings.py:643 +#: InvenTree/settings.py:646 msgid "English" msgstr "Angol" -#: InvenTree/settings.py:644 +#: InvenTree/settings.py:647 msgid "Spanish" msgstr "Spanyol" -#: InvenTree/settings.py:645 +#: InvenTree/settings.py:648 msgid "Spanish (Mexican)" msgstr "Spanyol (Mexikói)" -#: InvenTree/settings.py:646 +#: InvenTree/settings.py:649 msgid "Farsi / Persian" msgstr "Fárszi/Perzsa" -#: InvenTree/settings.py:647 +#: InvenTree/settings.py:650 msgid "French" msgstr "Francia" -#: InvenTree/settings.py:648 +#: InvenTree/settings.py:651 msgid "Hebrew" msgstr "Héber" -#: InvenTree/settings.py:649 +#: InvenTree/settings.py:652 msgid "Hungarian" msgstr "Magyar" -#: InvenTree/settings.py:650 +#: InvenTree/settings.py:653 msgid "Italian" msgstr "Olasz" -#: InvenTree/settings.py:651 +#: InvenTree/settings.py:654 msgid "Japanese" msgstr "Japán" -#: InvenTree/settings.py:652 +#: InvenTree/settings.py:655 msgid "Korean" msgstr "Koreai" -#: InvenTree/settings.py:653 +#: InvenTree/settings.py:656 msgid "Dutch" msgstr "Holland" -#: InvenTree/settings.py:654 +#: InvenTree/settings.py:657 msgid "Norwegian" msgstr "Norvég" -#: InvenTree/settings.py:655 +#: InvenTree/settings.py:658 msgid "Polish" msgstr "Lengyel" -#: InvenTree/settings.py:656 +#: InvenTree/settings.py:659 msgid "Portuguese" msgstr "Portugál" -#: InvenTree/settings.py:657 +#: InvenTree/settings.py:660 msgid "Portuguese (Brazilian)" msgstr "Portugál (Brazíliai)" -#: InvenTree/settings.py:658 +#: InvenTree/settings.py:661 msgid "Russian" msgstr "Orosz" -#: InvenTree/settings.py:659 +#: InvenTree/settings.py:662 msgid "Slovenian" msgstr "Szlovén" -#: InvenTree/settings.py:660 +#: InvenTree/settings.py:663 msgid "Swedish" msgstr "Svéd" -#: InvenTree/settings.py:661 +#: InvenTree/settings.py:664 msgid "Thai" msgstr "Tháj" -#: InvenTree/settings.py:662 +#: InvenTree/settings.py:665 msgid "Turkish" msgstr "Török" -#: InvenTree/settings.py:663 +#: InvenTree/settings.py:666 msgid "Vietnamese" msgstr "Vietnámi" -#: InvenTree/settings.py:664 +#: InvenTree/settings.py:667 msgid "Chinese" msgstr "Kínai" @@ -652,7 +655,7 @@ msgstr "Szülő tételből szétválasztva" msgid "Split child item" msgstr "Szétválasztott gyermek tétel" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2124 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2119 msgid "Merged stock items" msgstr "Összevont készlet tétel" @@ -756,7 +759,7 @@ msgstr "Gyártási utasítás" #: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:141 -#: templates/InvenTree/settings/sidebar.html:47 +#: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:254 users/models.py:41 msgid "Build Orders" msgstr "Gyártási utasítások" @@ -766,8 +769,9 @@ msgid "Build Order Reference" msgstr "Gyártási utasítás azonosító" #: build/models.py:155 order/models.py:241 order/models.py:651 -#: order/models.py:941 part/admin.py:224 part/models.py:3378 +#: order/models.py:941 part/admin.py:257 part/models.py:3456 #: part/templates/part/upload_bom.html:54 +#: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 #: templates/js/translated/bom.js:729 templates/js/translated/bom.js:905 @@ -793,13 +797,15 @@ msgstr "Gyártás, amihez ez a gyártás hozzá van rendelve" #: build/models.py:180 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:684 #: order/models.py:1038 order/models.py:1149 order/models.py:1150 -#: part/models.py:381 part/models.py:2781 part/models.py:2894 -#: part/models.py:2909 part/models.py:2928 part/models.py:2946 -#: part/models.py:3045 part/models.py:3166 part/models.py:3258 -#: part/models.py:3343 part/models.py:3659 part/serializers.py:853 -#: part/templates/part/part_app_base.html:8 +#: part/models.py:382 part/models.py:2799 part/models.py:2912 +#: part/models.py:2972 part/models.py:2987 part/models.py:3006 +#: part/models.py:3024 part/models.py:3123 part/models.py:3244 +#: part/models.py:3336 part/models.py:3421 part/models.py:3737 +#: part/serializers.py:894 part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 +#: report/templates/report/inventree_bill_of_materials_report.html:110 +#: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_base.html:109 #: report/templates/report/inventree_po_report.html:89 #: report/templates/report/inventree_so_report.html:90 stock/serializers.py:90 @@ -819,12 +825,12 @@ msgstr "Gyártás, amihez ez a gyártás hozzá van rendelve" #: templates/js/translated/order.js:1172 templates/js/translated/order.js:1676 #: templates/js/translated/order.js:2252 templates/js/translated/order.js:3199 #: templates/js/translated/order.js:3595 templates/js/translated/order.js:3825 -#: templates/js/translated/part.js:1208 templates/js/translated/part.js:1280 -#: templates/js/translated/part.js:1474 templates/js/translated/pricing.js:102 -#: templates/js/translated/stock.js:618 templates/js/translated/stock.js:783 -#: templates/js/translated/stock.js:993 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2552 templates/js/translated/stock.js:2747 -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/part.js:1479 templates/js/translated/part.js:1551 +#: templates/js/translated/part.js:1745 templates/js/translated/pricing.js:102 +#: templates/js/translated/stock.js:617 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:992 templates/js/translated/stock.js:1738 +#: templates/js/translated/stock.js:2547 templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2879 msgid "Part" msgstr "Alkatrész" @@ -890,7 +896,7 @@ msgstr "Batch kód" msgid "Batch code for this build output" msgstr "Batch kód a gyártás kimenetéhez" -#: build/models.py:252 order/models.py:87 part/models.py:1001 +#: build/models.py:252 order/models.py:87 part/models.py:1002 #: part/templates/part/part_base.html:318 templates/js/translated/order.js:2858 msgid "Creation Date" msgstr "Létrehozás dátuma" @@ -923,7 +929,7 @@ msgstr "Felhasználó aki ezt a gyártási utasítást kiállította" #: build/models.py:283 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:101 #: order/templates/order/order_base.html:185 -#: order/templates/order/sales_order_base.html:183 part/models.py:1005 +#: order/templates/order/sales_order_base.html:183 part/models.py:1006 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2658 templates/js/translated/order.js:2064 msgid "Responsible" @@ -936,7 +942,7 @@ msgstr "Felhasználó aki felelős ezért a gyártási utasításért" #: build/models.py:289 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:188 -#: part/templates/part/part_base.html:376 stock/models.py:714 +#: part/templates/part/part_base.html:390 stock/models.py:714 #: stock/templates/stock/item_base.html:203 msgid "External Link" msgstr "Külső link" @@ -1011,8 +1017,8 @@ msgstr "Gyártás amihez készletet foglaljunk" #: templates/js/translated/order.js:107 templates/js/translated/order.js:3200 #: templates/js/translated/order.js:3502 templates/js/translated/order.js:3507 #: templates/js/translated/order.js:3602 templates/js/translated/order.js:3694 -#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 -#: templates/js/translated/stock.js:2625 +#: templates/js/translated/part.js:803 templates/js/translated/stock.js:618 +#: templates/js/translated/stock.js:783 templates/js/translated/stock.js:2620 msgid "Stock Item" msgstr "Készlet tétel" @@ -1022,12 +1028,13 @@ msgstr "Forrás készlet tétel" #: build/models.py:1364 build/serializers.py:192 #: build/templates/build/build_base.html:85 -#: build/templates/build/detail.html:34 common/models.py:1842 +#: build/templates/build/detail.html:34 common/models.py:1849 #: order/models.py:934 order/models.py:1460 order/serializers.py:1206 -#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:223 -#: part/forms.py:40 part/models.py:3359 +#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:256 +#: part/forms.py:40 part/models.py:2919 part/models.py:3437 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 +#: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_base.html:113 #: report/templates/report/inventree_po_report.html:90 #: report/templates/report/inventree_so_report.html:91 @@ -1049,13 +1056,14 @@ msgstr "Forrás készlet tétel" #: templates/js/translated/order.js:3201 templates/js/translated/order.js:3521 #: templates/js/translated/order.js:3608 templates/js/translated/order.js:3700 #: templates/js/translated/order.js:3847 templates/js/translated/order.js:4338 -#: templates/js/translated/part.js:1078 templates/js/translated/part.js:2568 +#: templates/js/translated/part.js:805 templates/js/translated/part.js:876 +#: templates/js/translated/part.js:1349 templates/js/translated/part.js:2849 #: templates/js/translated/pricing.js:114 #: templates/js/translated/pricing.js:207 #: templates/js/translated/pricing.js:255 -#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:490 -#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:814 -#: templates/js/translated/stock.js:2674 templates/js/translated/stock.js:2759 +#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:489 +#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:813 +#: templates/js/translated/stock.js:2669 templates/js/translated/stock.js:2754 msgid "Quantity" msgstr "Mennyiség" @@ -1097,8 +1105,8 @@ msgid "Enter quantity for build output" msgstr "Add meg a mennyiséget a gyártás kimenetéhez" #: build/serializers.py:207 build/serializers.py:683 order/models.py:327 -#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:645 -#: part/serializers.py:1016 stock/models.py:574 stock/models.py:1312 +#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:686 +#: part/serializers.py:1057 stock/models.py:574 stock/models.py:1312 #: stock/serializers.py:294 msgid "Quantity must be greater than zero" msgstr "Mennyiségnek nullánál többnek kell lennie" @@ -1113,7 +1121,7 @@ msgstr "Egész számú mennyiség szükséges, mivel az alkatrészjegyzék egyed #: build/serializers.py:231 order/serializers.py:463 order/serializers.py:1210 #: stock/serializers.py:303 templates/js/translated/order.js:1545 -#: templates/js/translated/stock.js:303 templates/js/translated/stock.js:491 +#: templates/js/translated/stock.js:302 templates/js/translated/stock.js:490 msgid "Serial Numbers" msgstr "Sorozatszámok" @@ -1146,9 +1154,10 @@ msgstr "A gyártási kimenetek listáját meg kell adni" #: templates/js/translated/build.js:1759 templates/js/translated/order.js:1572 #: templates/js/translated/order.js:3514 templates/js/translated/order.js:3619 #: templates/js/translated/order.js:3627 templates/js/translated/order.js:3708 -#: templates/js/translated/part.js:183 templates/js/translated/stock.js:620 -#: templates/js/translated/stock.js:785 templates/js/translated/stock.js:995 -#: templates/js/translated/stock.js:1895 templates/js/translated/stock.js:2566 +#: templates/js/translated/part.js:186 templates/js/translated/part.js:804 +#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 +#: templates/js/translated/stock.js:994 templates/js/translated/stock.js:1890 +#: templates/js/translated/stock.js:2561 msgid "Location" msgstr "Hely" @@ -1162,8 +1171,8 @@ msgstr "A kész gyártási kimenetek helye" #: stock/templates/stock/item_base.html:421 #: templates/js/translated/barcode.js:237 templates/js/translated/build.js:2630 #: templates/js/translated/order.js:1681 templates/js/translated/order.js:2034 -#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1870 -#: templates/js/translated/stock.js:2643 templates/js/translated/stock.js:2775 +#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:2638 templates/js/translated/stock.js:2770 msgid "Status" msgstr "Állapot" @@ -1240,8 +1249,8 @@ msgstr "Szükséges gyártási mennyiség nem lett elérve" msgid "Build order has incomplete outputs" msgstr "A gyártási utasítás befejezetlen kimeneteket tartalmaz" -#: build/serializers.py:595 build/serializers.py:640 part/models.py:3495 -#: part/models.py:3651 +#: build/serializers.py:595 build/serializers.py:640 part/models.py:3573 +#: part/models.py:3729 msgid "BOM Item" msgstr "Alkatrészjegyzék tétel" @@ -1312,11 +1321,11 @@ msgstr "Helyettesítő alkatrészek foglalásának engedélyezése" #: build/serializers.py:850 msgid "Optional Items" -msgstr "" +msgstr "Opcionális tételek" #: build/serializers.py:851 msgid "Allocate optional BOM items to build order" -msgstr "" +msgstr "Opcionális tételek lefoglalása a gyártáshoz" #: build/tasks.py:100 msgid "Stock required for build order" @@ -1407,7 +1416,7 @@ msgstr "Még nincs lefoglalva a szükséges készlet" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2670 templates/js/translated/order.js:2051 #: templates/js/translated/order.js:2382 templates/js/translated/order.js:2866 -#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1093 +#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1364 msgid "Target Date" msgstr "Cél dátum" @@ -1485,8 +1494,8 @@ msgstr "Lefoglalt alkatrészek" #: stock/templates/stock/item_base.html:168 #: templates/js/translated/build.js:1250 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:1884 -#: templates/js/translated/stock.js:2782 +#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:1879 +#: templates/js/translated/stock.js:2777 #: templates/js/translated/table_filters.js:179 #: templates/js/translated/table_filters.js:270 msgid "Batch" @@ -1618,8 +1627,8 @@ msgstr "Befejezett gyártási kimenetek" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:86 #: order/templates/order/sales_order_detail.html:140 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:210 -#: part/templates/part/part_sidebar.html:55 stock/templates/stock/item.html:117 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:233 +#: part/templates/part/part_sidebar.html:60 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" msgstr "Mellékletek" @@ -1636,7 +1645,7 @@ msgstr "Lefoglalás kész" msgid "All untracked stock items have been allocated" msgstr "A szükséges készlet már mind le lett foglalva" -#: build/templates/build/index.html:18 part/templates/part/detail.html:316 +#: build/templates/build/index.html:18 part/templates/part/detail.html:339 msgid "New Build Order" msgstr "Új gyártási utasítás" @@ -1929,9 +1938,9 @@ msgstr "Kategória paraméter sablonok másolása" 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:1014 part/admin.py:41 part/models.py:3168 +#: common/models.py:1014 part/admin.py:41 part/models.py:3246 #: report/models.py:158 templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:504 +#: templates/js/translated/table_filters.js:508 msgid "Template" msgstr "Sablon" @@ -1939,7 +1948,7 @@ msgstr "Sablon" msgid "Parts are templates by default" msgstr "Alkatrészek alapból sablon alkatrészek legyenek" -#: common/models.py:1021 part/admin.py:37 part/admin.py:229 part/models.py:957 +#: common/models.py:1021 part/admin.py:37 part/admin.py:262 part/models.py:958 #: templates/js/translated/bom.js:1595 #: templates/js/translated/table_filters.js:196 #: templates/js/translated/table_filters.js:467 @@ -1950,7 +1959,7 @@ msgstr "Gyártmány" 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:1028 part/admin.py:38 part/models.py:963 +#: common/models.py:1028 part/admin.py:38 part/models.py:964 #: templates/js/translated/table_filters.js:475 msgid "Component" msgstr "Összetevő" @@ -1959,7 +1968,7 @@ msgstr "Összetevő" 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:1035 part/admin.py:39 part/models.py:974 +#: common/models.py:1035 part/admin.py:39 part/models.py:975 msgid "Purchaseable" msgstr "Beszerezhető" @@ -1967,7 +1976,7 @@ msgstr "Beszerezhető" msgid "Parts are purchaseable by default" msgstr "Alkatrészek alapból beszerezhetők legyenek" -#: common/models.py:1042 part/admin.py:40 part/models.py:979 +#: common/models.py:1042 part/admin.py:40 part/models.py:980 #: templates/js/translated/table_filters.js:496 msgid "Salable" msgstr "Értékesíthető" @@ -1976,10 +1985,10 @@ msgstr "Értékesíthető" msgid "Parts are salable by default" msgstr "Alkatrészek alapból eladhatók legyenek" -#: common/models.py:1049 part/admin.py:42 part/models.py:969 +#: common/models.py:1049 part/admin.py:42 part/models.py:970 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:120 -#: templates/js/translated/table_filters.js:508 +#: templates/js/translated/table_filters.js:512 msgid "Trackable" msgstr "Követésre kötelezett" @@ -1987,10 +1996,10 @@ msgstr "Követésre kötelezett" msgid "Parts are trackable by default" msgstr "Alkatrészek alapból követésre kötelezettek legyenek" -#: common/models.py:1056 part/admin.py:43 part/models.py:989 +#: common/models.py:1056 part/admin.py:43 part/models.py:990 #: part/templates/part/part_base.html:156 #: templates/js/translated/table_filters.js:42 -#: templates/js/translated/table_filters.js:512 +#: templates/js/translated/table_filters.js:516 msgid "Virtual" msgstr "Virtuális" @@ -2172,19 +2181,19 @@ msgstr "A sorozatszámoknak egyedinek kell lennie a teljes készletre vonatkozó #: common/models.py:1225 msgid "Autofill Serial Numbers" -msgstr "" +msgstr "Sorozatszámok automatikus kitöltése" #: common/models.py:1226 msgid "Autofill serial numbers in forms" -msgstr "" +msgstr "Sorozatszámok automatikus kitöltése a formokon" #: common/models.py:1232 msgid "Delete Depleted Stock" -msgstr "" +msgstr "Kimerült készlet törlése" #: common/models.py:1233 msgid "Determines default behaviour when a stock item is depleted" -msgstr "" +msgstr "Alapértelmezett művelet mikor a készlet tétel elfogy" #: common/models.py:1239 msgid "Batch Code Template" @@ -2418,7 +2427,7 @@ msgstr "Esemény integráció engedélyezése" 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:1461 common/models.py:1803 +#: common/models.py:1461 common/models.py:1810 msgid "Settings key (must be unique - case insensitive" msgstr "Beállítások kulcs (egyedinek kell lennie, nem kis- nagybetű érzékeny" @@ -2750,41 +2759,50 @@ msgstr "Alkatrész ütemezés" msgid "Display part scheduling information" msgstr "Alkatrész ütemezési információk megjelenítése" -#: common/models.py:1778 +#: common/models.py:1778 part/templates/part/detail.html:61 +#: templates/js/translated/part.js:822 +msgid "Part Stocktake" +msgstr "Alkatrész leltár" + +#: common/models.py:1779 +msgid "Display part stocktake information" +msgstr "Alkatrész leltározási információk megjelenítése" + +#: common/models.py:1785 msgid "Table String Length" msgstr "Táblázati szöveg hossz" -#: common/models.py:1779 +#: common/models.py:1786 msgid "Maximimum length limit for strings displayed in table views" msgstr "Maximális szöveg hossz ami megjelenhet a táblázatokban" -#: common/models.py:1843 +#: common/models.py:1850 msgid "Price break quantity" msgstr "Ársáv mennyiség" -#: common/models.py:1850 company/serializers.py:393 order/models.py:975 -#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1145 +#: common/models.py:1857 company/serializers.py:393 order/models.py:975 +#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1416 #: templates/js/translated/pricing.js:354 msgid "Price" msgstr "Ár" -#: common/models.py:1851 +#: common/models.py:1858 msgid "Unit price at specified quantity" msgstr "Egységár egy meghatározott mennyiség esetén" -#: common/models.py:2011 common/models.py:2189 +#: common/models.py:2018 common/models.py:2196 msgid "Endpoint" msgstr "Végpont" -#: common/models.py:2012 +#: common/models.py:2019 msgid "Endpoint at which this webhook is received" msgstr "Végpont ahol ez a webhook érkezik" -#: common/models.py:2021 +#: common/models.py:2028 msgid "Name for this webhook" msgstr "Webhook neve" -#: common/models.py:2026 part/admin.py:36 part/models.py:984 +#: common/models.py:2033 part/admin.py:36 part/models.py:985 #: plugin/models.py:100 templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:116 #: templates/js/translated/table_filters.js:336 @@ -2792,131 +2810,133 @@ msgstr "Webhook neve" msgid "Active" msgstr "Aktív" -#: common/models.py:2027 +#: common/models.py:2034 msgid "Is this webhook active" msgstr "Aktív-e ez a webhook" -#: common/models.py:2041 +#: common/models.py:2048 msgid "Token" msgstr "Token" -#: common/models.py:2042 +#: common/models.py:2049 msgid "Token for access" msgstr "Token a hozzáféréshez" -#: common/models.py:2049 +#: common/models.py:2056 msgid "Secret" msgstr "Titok" -#: common/models.py:2050 +#: common/models.py:2057 msgid "Shared secret for HMAC" msgstr "Megosztott titok a HMAC-hoz" -#: common/models.py:2156 +#: common/models.py:2163 msgid "Message ID" msgstr "Üzenet azonosító" -#: common/models.py:2157 +#: common/models.py:2164 msgid "Unique identifier for this message" msgstr "Egyedi azonosító ehhez az üzenethez" -#: common/models.py:2165 +#: common/models.py:2172 msgid "Host" msgstr "Kiszolgáló" -#: common/models.py:2166 +#: common/models.py:2173 msgid "Host from which this message was received" msgstr "Kiszolgáló ahonnan ez az üzenet érkezett" -#: common/models.py:2173 +#: common/models.py:2180 msgid "Header" msgstr "Fejléc" -#: common/models.py:2174 +#: common/models.py:2181 msgid "Header of this message" msgstr "Üzenet fejléce" -#: common/models.py:2180 +#: common/models.py:2187 msgid "Body" msgstr "Törzs" -#: common/models.py:2181 +#: common/models.py:2188 msgid "Body of this message" msgstr "Üzenet törzse" -#: common/models.py:2190 +#: common/models.py:2197 msgid "Endpoint on which this message was received" msgstr "Végpont amin ez az üzenet érkezett" -#: common/models.py:2195 +#: common/models.py:2202 msgid "Worked on" msgstr "Dolgozott rajta" -#: common/models.py:2196 +#: common/models.py:2203 msgid "Was the work on this message finished?" msgstr "Befejeződött a munka ezzel az üzenettel?" -#: common/models.py:2355 +#: common/models.py:2362 msgid "Id" msgstr "Id" -#: common/models.py:2361 templates/js/translated/news.js:35 +#: common/models.py:2368 templates/js/translated/news.js:35 msgid "Title" msgstr "Cím" -#: common/models.py:2371 templates/js/translated/news.js:51 +#: common/models.py:2378 templates/js/translated/news.js:51 msgid "Published" msgstr "Közzétéve" -#: common/models.py:2376 templates/InvenTree/settings/plugin.html:62 +#: common/models.py:2383 templates/InvenTree/settings/plugin.html:62 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/news.js:47 msgid "Author" msgstr "Szerző" -#: common/models.py:2381 templates/js/translated/news.js:43 +#: common/models.py:2388 templates/js/translated/news.js:43 msgid "Summary" msgstr "Összefoglaló" -#: common/models.py:2386 +#: common/models.py:2393 msgid "Read" msgstr "Elolvasva" -#: common/models.py:2387 +#: common/models.py:2394 msgid "Was this news item read?" msgstr "Elolvasva?" -#: common/notifications.py:293 +#: common/notifications.py:294 #, python-brace-format msgid "New {verbose_name}" msgstr "Új {verbose_name}" -#: common/notifications.py:295 +#: common/notifications.py:296 msgid "A new order has been created and assigned to you" msgstr "Egy új megrendelés létrehozva, és hozzád rendelve" -#: common/notifications.py:301 +#: common/notifications.py:302 msgid "Items Received" msgstr "Készlet érkezett" -#: common/notifications.py:303 +#: common/notifications.py:304 msgid "Items have been received against a purchase order" msgstr "Készlet érkezett egy beszerzési megrendeléshez" -#: common/notifications.py:415 +#: common/notifications.py:416 msgid "Error raised by plugin" msgstr "Plugin hiba" #: common/views.py:85 order/templates/order/order_wizard/po_upload.html:51 #: order/templates/order/purchase_order_detail.html:25 order/views.py:102 -#: part/views.py:107 templates/patterns/wizard/upload.html:37 +#: part/templates/part/import_wizard/part_upload.html:58 part/views.py:109 +#: templates/patterns/wizard/upload.html:37 msgid "Upload File" msgstr "Fájl feltöltése" #: common/views.py:86 order/templates/order/order_wizard/match_fields.html:52 #: order/views.py:103 #: part/templates/part/import_wizard/ajax_match_fields.html:45 -#: part/views.py:108 templates/patterns/wizard/match_fields.html:51 +#: part/templates/part/import_wizard/match_fields.html:52 part/views.py:110 +#: templates/patterns/wizard/match_fields.html:51 msgid "Match Fields" msgstr "Mezők egyeztetése" @@ -2935,7 +2955,9 @@ msgstr "Importált alkatrészek" #: common/views.py:509 order/templates/order/order_wizard/match_fields.html:27 #: order/templates/order/order_wizard/match_parts.html:19 #: order/templates/order/order_wizard/po_upload.html:49 +#: part/templates/part/import_wizard/match_fields.html:27 #: part/templates/part/import_wizard/match_references.html:19 +#: part/templates/part/import_wizard/part_upload.html:56 #: templates/patterns/wizard/match_fields.html:26 #: templates/patterns/wizard/upload.html:35 msgid "Previous Step" @@ -2996,7 +3018,7 @@ msgstr "Kapcsolattartó" msgid "Link to external company information" msgstr "Link a külső céginformációhoz" -#: company/models.py:140 part/models.py:878 +#: company/models.py:140 part/models.py:879 msgid "Image" msgstr "Kép" @@ -3029,8 +3051,8 @@ msgid "Does this company manufacture parts?" msgstr "Gyárt ez a cég alkatrészeket?" #: company/models.py:153 company/serializers.py:399 -#: company/templates/company/company_base.html:107 part/models.py:2762 -#: part/serializers.py:154 part/serializers.py:182 stock/serializers.py:182 +#: company/templates/company/company_base.html:107 part/models.py:2780 +#: part/serializers.py:156 part/serializers.py:184 stock/serializers.py:182 #: templates/InvenTree/settings/pricing.html:64 msgid "Currency" msgstr "Pénznem" @@ -3056,12 +3078,12 @@ msgstr "Válassz alkatrészt" #: templates/js/translated/company.js:433 #: templates/js/translated/company.js:534 #: templates/js/translated/company.js:669 -#: templates/js/translated/company.js:957 templates/js/translated/part.js:238 +#: templates/js/translated/company.js:957 templates/js/translated/part.js:241 #: templates/js/translated/table_filters.js:439 msgid "Manufacturer" msgstr "Gyártó" -#: company/models.py:269 templates/js/translated/part.js:239 +#: company/models.py:269 templates/js/translated/part.js:242 msgid "Select manufacturer" msgstr "Gyártó kiválasztása" @@ -3071,11 +3093,11 @@ msgstr "Gyártó kiválasztása" #: templates/js/translated/company.js:533 #: templates/js/translated/company.js:685 #: templates/js/translated/company.js:976 templates/js/translated/order.js:2286 -#: templates/js/translated/part.js:249 templates/js/translated/part.js:1067 +#: templates/js/translated/part.js:252 templates/js/translated/part.js:1338 msgid "MPN" msgstr "MPN" -#: company/models.py:276 templates/js/translated/part.js:250 +#: company/models.py:276 templates/js/translated/part.js:253 msgid "Manufacturer Part Number" msgstr "Gyártói cikkszám" @@ -3101,8 +3123,8 @@ msgstr "Paraméter neve" #: company/models.py:370 #: report/templates/report/inventree_test_report_base.html:95 #: stock/models.py:2156 templates/js/translated/company.js:582 -#: templates/js/translated/company.js:800 templates/js/translated/part.js:889 -#: templates/js/translated/stock.js:1399 +#: templates/js/translated/company.js:800 templates/js/translated/part.js:1160 +#: templates/js/translated/stock.js:1398 msgid "Value" msgstr "Érték" @@ -3110,10 +3132,10 @@ msgstr "Érték" msgid "Parameter value" msgstr "Paraméter értéke" -#: company/models.py:377 part/admin.py:26 part/models.py:951 -#: part/models.py:3128 part/templates/part/part_base.html:286 -#: templates/InvenTree/settings/settings.html:349 -#: templates/js/translated/company.js:806 templates/js/translated/part.js:895 +#: company/models.py:377 part/admin.py:26 part/models.py:952 +#: part/models.py:3206 part/templates/part/part_base.html:286 +#: templates/InvenTree/settings/settings.html:350 +#: templates/js/translated/company.js:806 templates/js/translated/part.js:1166 msgid "Units" msgstr "Mértékegységek" @@ -3133,24 +3155,24 @@ msgstr "Kapcsolódó gyártói alkatrésznek ugyanarra a kiindulási alkatrészr #: templates/js/translated/company.js:304 #: templates/js/translated/company.js:437 #: templates/js/translated/company.js:930 templates/js/translated/order.js:2017 -#: templates/js/translated/part.js:219 templates/js/translated/part.js:1035 +#: templates/js/translated/part.js:222 templates/js/translated/part.js:1306 #: templates/js/translated/pricing.js:231 #: templates/js/translated/table_filters.js:443 msgid "Supplier" msgstr "Beszállító" -#: company/models.py:498 templates/js/translated/part.js:220 +#: company/models.py:498 templates/js/translated/part.js:223 msgid "Select supplier" msgstr "Beszállító kiválasztása" #: company/models.py:503 company/templates/company/supplier_part.html:146 #: part/bom.py:253 part/bom.py:281 templates/js/translated/company.js:303 -#: templates/js/translated/order.js:2273 templates/js/translated/part.js:230 -#: templates/js/translated/part.js:1053 templates/js/translated/pricing.js:243 +#: templates/js/translated/order.js:2273 templates/js/translated/part.js:233 +#: templates/js/translated/part.js:1324 templates/js/translated/pricing.js:243 msgid "SKU" msgstr "SKU" -#: company/models.py:504 templates/js/translated/part.js:231 +#: company/models.py:504 templates/js/translated/part.js:234 msgid "Supplier stock keeping unit" msgstr "Beszállítói cikkszám" @@ -3167,24 +3189,25 @@ msgid "Supplier part description" msgstr "Beszállítói alkatrész leírása" #: company/models.py:528 company/templates/company/supplier_part.html:181 -#: part/admin.py:225 part/models.py:3381 part/templates/part/upload_bom.html:59 +#: part/admin.py:258 part/models.py:3459 part/templates/part/upload_bom.html:59 +#: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:397 msgid "Note" msgstr "Megjegyzés" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "base cost" msgstr "alap költség" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "Minimum charge (e.g. stocking fee)" msgstr "Minimális díj (pl. tárolási díj)" #: company/models.py:534 company/templates/company/supplier_part.html:167 #: stock/admin.py:101 stock/models.py:682 #: stock/templates/stock/item_base.html:243 -#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2016 +#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2011 msgid "Packaging" msgstr "Csomagolás" @@ -3197,7 +3220,7 @@ msgstr "Alkatrész csomagolás" #: templates/js/translated/company.js:997 templates/js/translated/order.js:826 #: templates/js/translated/order.js:1253 templates/js/translated/order.js:1508 #: templates/js/translated/order.js:2317 templates/js/translated/order.js:2334 -#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1137 +#: templates/js/translated/part.js:1356 templates/js/translated/part.js:1408 msgid "Pack Quantity" msgstr "Csomagolási mennyiség" @@ -3205,7 +3228,7 @@ msgstr "Csomagolási mennyiség" msgid "Unit quantity supplied in a single pack" msgstr "Egy csomagban lévő mennyiség" -#: company/models.py:544 part/models.py:1863 +#: company/models.py:544 part/models.py:1869 msgid "multiple" msgstr "többszörös" @@ -3217,8 +3240,8 @@ msgstr "Többszörös rendelés" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:1118 templates/js/translated/build.js:1883 -#: templates/js/translated/build.js:2770 templates/js/translated/part.js:623 -#: templates/js/translated/part.js:626 +#: templates/js/translated/build.js:2770 templates/js/translated/part.js:626 +#: templates/js/translated/part.js:629 #: templates/js/translated/table_filters.js:206 msgid "Available" msgstr "Elérhető" @@ -3301,7 +3324,7 @@ msgstr "Kép törlése" #: stock/templates/stock/item_base.html:399 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:429 templates/js/translated/order.js:2827 -#: templates/js/translated/stock.js:2607 +#: templates/js/translated/stock.js:2602 #: templates/js/translated/table_filters.js:447 msgid "Customer" msgstr "Vevő" @@ -3315,7 +3338,7 @@ msgid "Phone" msgstr "Telefonszám" #: company/templates/company/company_base.html:206 -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:525 msgid "Remove Image" msgstr "Kép eltávolítása" @@ -3324,19 +3347,19 @@ msgid "Remove associated image from this company" msgstr "Céghez rendelt kép eltávolítása" #: company/templates/company/company_base.html:209 -#: part/templates/part/part_base.html:514 +#: part/templates/part/part_base.html:528 #: templates/InvenTree/settings/user.html:87 #: templates/InvenTree/settings/user.html:149 msgid "Remove" msgstr "Törlés" #: company/templates/company/company_base.html:238 -#: part/templates/part/part_base.html:543 +#: part/templates/part/part_base.html:557 msgid "Upload Image" msgstr "Kép feltöltése" #: company/templates/company/company_base.html:253 -#: part/templates/part/part_base.html:598 +#: part/templates/part/part_base.html:612 msgid "Download Image" msgstr "Kép letöltése" @@ -3352,7 +3375,7 @@ msgstr "Új beszállítói alkatrész létrehozása" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:357 +#: part/templates/part/detail.html:380 msgid "New Supplier Part" msgstr "Új beszállítói alkatrész" @@ -3381,7 +3404,7 @@ msgstr "Gyártói alkatrészek" msgid "Create new manufacturer part" msgstr "Új gyártói alkatrész létrehozása" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:387 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:410 msgid "New Manufacturer Part" msgstr "Új gyártói alkatrész" @@ -3395,9 +3418,9 @@ msgstr "Beszállítói készlet" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:35 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:35 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:200 -#: templates/InvenTree/settings/sidebar.html:49 +#: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:293 templates/navbar.html:50 #: users/models.py:42 msgid "Purchase Orders" @@ -3418,9 +3441,9 @@ msgstr "Új beszerzési rendelés" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:39 +#: part/templates/part/detail.html:130 part/templates/part/part_sidebar.html:39 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:220 -#: templates/InvenTree/settings/sidebar.html:51 +#: templates/InvenTree/settings/sidebar.html:53 #: templates/js/translated/search.js:317 templates/navbar.html:61 #: users/models.py:43 msgid "Sales Orders" @@ -3452,7 +3475,7 @@ msgstr "Gyártók" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:221 -#: part/templates/part/detail.html:87 part/templates/part/part_base.html:85 +#: part/templates/part/detail.html:110 part/templates/part/part_base.html:85 msgid "Order part" msgstr "Alkatrész rendelés" @@ -3483,28 +3506,28 @@ msgid "Suppliers" msgstr "Beszállítók" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:368 +#: part/templates/part/detail.html:391 msgid "Delete supplier parts" msgstr "Beszállítói alkatrész törlése" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:369 part/templates/part/detail.html:399 -#: templates/js/translated/forms.js:455 templates/js/translated/helpers.js:38 -#: templates/js/translated/part.js:351 templates/js/translated/stock.js:188 -#: users/models.py:224 +#: part/templates/part/detail.html:392 part/templates/part/detail.html:422 +#: templates/js/translated/forms.js:458 templates/js/translated/helpers.js:38 +#: templates/js/translated/part.js:354 templates/js/translated/stock.js:187 +#: users/models.py:225 msgid "Delete" msgstr "Törlés" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:184 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:207 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "Paraméterek" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:189 +#: part/templates/part/detail.html:212 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:62 msgid "New Parameter" @@ -3515,7 +3538,7 @@ msgid "Delete parameters" msgstr "Paraméterek törlése" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:825 +#: part/templates/part/detail.html:865 msgid "Add Parameter" msgstr "Paraméter hozzáadása" @@ -3539,7 +3562,7 @@ msgstr "Hozzárendelt készlet tételek" #: company/templates/company/supplier_part.html:24 stock/models.py:665 #: stock/templates/stock/item_base.html:236 #: templates/js/translated/company.js:946 templates/js/translated/order.js:1173 -#: templates/js/translated/stock.js:1974 +#: templates/js/translated/stock.js:1969 msgid "Supplier Part" msgstr "Beszállítói alkatrész" @@ -3579,7 +3602,7 @@ msgstr "Beszállítói alkatrész műveletek" #: company/templates/company/supplier_part.html:56 #: company/templates/company/supplier_part.html:57 #: company/templates/company/supplier_part.html:222 -#: part/templates/part/detail.html:88 +#: part/templates/part/detail.html:111 msgid "Order Part" msgstr "Alkatrész rendelése" @@ -3631,7 +3654,7 @@ msgstr "Új készlet tétel létrehozása" #: company/templates/company/supplier_part.html:204 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:198 -#: templates/js/translated/stock.js:467 +#: templates/js/translated/stock.js:466 msgid "New Stock Item" msgstr "Új készlet tétel" @@ -3663,10 +3686,10 @@ msgstr "Alkatrész elérhetőség frissítése" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 -#: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/part.js:777 templates/js/translated/part.js:1378 -#: templates/js/translated/part.js:1534 templates/js/translated/stock.js:994 -#: templates/js/translated/stock.js:1799 templates/navbar.html:31 +#: templates/InvenTree/settings/sidebar.html:47 +#: templates/js/translated/part.js:1048 templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1805 templates/js/translated/stock.js:993 +#: templates/js/translated/stock.js:1794 templates/navbar.html:31 msgid "Stock" msgstr "Készlet" @@ -3681,7 +3704,7 @@ msgstr "Beszállító alkatrész árazás" #: company/templates/company/supplier_part_navbar.html:29 #: part/templates/part/part_sidebar.html:30 -#: templates/InvenTree/settings/sidebar.html:35 +#: templates/InvenTree/settings/sidebar.html:37 msgid "Pricing" msgstr "Árazás" @@ -3693,7 +3716,7 @@ msgstr "Árazás" #: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:155 templates/js/translated/search.js:225 -#: templates/js/translated/stock.js:2484 users/models.py:40 +#: templates/js/translated/stock.js:2479 users/models.py:40 msgid "Stock Items" msgstr "Készlet tételek" @@ -3802,15 +3825,15 @@ msgstr "Nincs egyező beszerzési rendelés" #: stock/templates/stock/item_base.html:182 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:619 templates/js/translated/order.js:1174 -#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1012 -#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1954 -#: templates/js/translated/stock.js:2588 +#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1283 +#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1949 +#: templates/js/translated/stock.js:2583 msgid "Purchase Order" msgstr "Beszerzési rendelés" #: order/api.py:1258 msgid "Unknown" -msgstr "" +msgstr "Ismeretlen" #: order/models.py:83 msgid "Order description" @@ -3974,7 +3997,7 @@ msgstr "Beszállítói alkatrész" #: order/models.py:1046 order/templates/order/order_base.html:178 #: templates/js/translated/order.js:1679 templates/js/translated/order.js:2404 -#: templates/js/translated/part.js:1129 templates/js/translated/part.js:1161 +#: templates/js/translated/part.js:1400 templates/js/translated/part.js:1432 #: templates/js/translated/table_filters.js:358 msgid "Received" msgstr "Beérkezett" @@ -3985,7 +4008,7 @@ msgstr "Érkezett tételek száma" #: order/models.py:1054 stock/models.py:800 stock/serializers.py:173 #: stock/templates/stock/item_base.html:189 -#: templates/js/translated/stock.js:2005 +#: templates/js/translated/stock.js:2000 msgid "Purchase Price" msgstr "Beszerzési ár" @@ -4351,18 +4374,21 @@ msgstr "A teljes költség nem számolható" #: order/templates/order/order_wizard/match_fields.html:9 #: part/templates/part/import_wizard/ajax_match_fields.html:9 +#: part/templates/part/import_wizard/match_fields.html:9 #: templates/patterns/wizard/match_fields.html:8 msgid "Missing selections for the following required columns" msgstr "Hiányzó kiválasztás a következő oszlopokhoz" #: order/templates/order/order_wizard/match_fields.html:20 #: part/templates/part/import_wizard/ajax_match_fields.html:20 +#: part/templates/part/import_wizard/match_fields.html:20 #: templates/patterns/wizard/match_fields.html:19 msgid "Duplicate selections found, see below. Fix them then retry submitting." msgstr "Többszörös kiválasztás található, lásd lentebb. Javítsd őket aztán próbáld újraküldeni." #: order/templates/order/order_wizard/match_fields.html:29 #: order/templates/order/order_wizard/match_parts.html:21 +#: part/templates/part/import_wizard/match_fields.html:29 #: part/templates/part/import_wizard/match_references.html:21 #: templates/patterns/wizard/match_fields.html:28 msgid "Submit Selections" @@ -4370,18 +4396,21 @@ msgstr "Kiválasztás küldése" #: order/templates/order/order_wizard/match_fields.html:35 #: part/templates/part/import_wizard/ajax_match_fields.html:28 +#: part/templates/part/import_wizard/match_fields.html:35 #: templates/patterns/wizard/match_fields.html:34 msgid "File Fields" msgstr "Fájl mezők" #: order/templates/order/order_wizard/match_fields.html:42 #: part/templates/part/import_wizard/ajax_match_fields.html:35 +#: part/templates/part/import_wizard/match_fields.html:42 #: templates/patterns/wizard/match_fields.html:41 msgid "Remove column" msgstr "Oszlop eltávolítása" #: order/templates/order/order_wizard/match_fields.html:60 #: part/templates/part/import_wizard/ajax_match_fields.html:53 +#: part/templates/part/import_wizard/match_fields.html:60 #: templates/patterns/wizard/match_fields.html:59 msgid "Duplicate selection" msgstr "Kijelöltek másolása" @@ -4390,12 +4419,13 @@ msgstr "Kijelöltek másolása" #: order/templates/order/order_wizard/match_parts.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: 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:102 templates/js/translated/build.js:485 #: templates/js/translated/build.js:641 templates/js/translated/build.js:2088 #: templates/js/translated/order.js:1122 templates/js/translated/order.js:1624 -#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:657 -#: templates/js/translated/stock.js:825 +#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:824 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "Sor törlése" @@ -4430,6 +4460,7 @@ msgstr "A rendelést már feldolgozták. Így már nem lehet fájlokat feltölte #: order/templates/order/order_wizard/po_upload.html:27 #: part/templates/part/import_wizard/ajax_part_upload.html:10 +#: part/templates/part/import_wizard/part_upload.html:26 #: templates/patterns/wizard/upload.html:13 #, python-format msgid "Step %(step)s of %(count)s" @@ -4568,12 +4599,12 @@ 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:19 part/admin.py:219 part/models.py:3262 stock/admin.py:84 +#: part/admin.py:19 part/admin.py:252 part/models.py:3340 stock/admin.py:84 #: templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "Alkatrész ID" -#: part/admin.py:20 part/admin.py:221 part/models.py:3266 stock/admin.py:85 +#: part/admin.py:20 part/admin.py:254 part/models.py:3344 stock/admin.py:85 msgid "Part Name" msgstr "Alkatrész neve" @@ -4581,32 +4612,32 @@ msgstr "Alkatrész neve" msgid "Part Description" msgstr "Alkatrész leírása" -#: part/admin.py:22 part/models.py:852 part/templates/part/part_base.html:272 -#: templates/js/translated/part.js:763 templates/js/translated/part.js:1491 -#: templates/js/translated/stock.js:1765 +#: part/admin.py:22 part/models.py:853 part/templates/part/part_base.html:272 +#: templates/js/translated/part.js:1034 templates/js/translated/part.js:1762 +#: templates/js/translated/stock.js:1760 msgid "IPN" msgstr "IPN" -#: part/admin.py:23 part/models.py:860 part/templates/part/part_base.html:279 -#: report/models.py:171 templates/js/translated/part.js:768 +#: part/admin.py:23 part/models.py:861 part/templates/part/part_base.html:279 +#: report/models.py:171 templates/js/translated/part.js:1039 msgid "Revision" msgstr "Változat" -#: part/admin.py:24 part/admin.py:145 part/models.py:838 +#: part/admin.py:24 part/admin.py:178 part/models.py:839 #: part/templates/part/category.html:87 part/templates/part/part_base.html:300 msgid "Keywords" msgstr "Kulcsszavak" -#: part/admin.py:28 part/admin.py:139 +#: part/admin.py:28 part/admin.py:172 #: templates/js/translated/model_renderers.js:338 msgid "Category ID" msgstr "Kategória ID" -#: part/admin.py:29 part/admin.py:140 +#: part/admin.py:29 part/admin.py:173 msgid "Category Name" msgstr "Kategória neve" -#: part/admin.py:30 part/admin.py:144 +#: part/admin.py:30 part/admin.py:177 msgid "Default Location ID" msgstr "Alapértelmezett készlethely ID" @@ -4614,7 +4645,7 @@ msgstr "Alapértelmezett készlethely ID" msgid "Default Supplier ID" msgstr "Alapértelmezett beszállító ID" -#: part/admin.py:33 part/models.py:944 part/templates/part/part_base.html:206 +#: part/admin.py:33 part/models.py:945 part/templates/part/part_base.html:206 msgid "Minimum Stock" msgstr "Minimális készlet" @@ -4626,8 +4657,8 @@ msgstr "Készleten" #: part/admin.py:48 part/bom.py:145 part/templates/part/part_base.html:213 #: templates/js/translated/bom.js:1156 templates/js/translated/build.js:1935 -#: templates/js/translated/part.js:613 templates/js/translated/part.js:633 -#: templates/js/translated/part.js:1381 templates/js/translated/part.js:1559 +#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 +#: templates/js/translated/part.js:1652 templates/js/translated/part.js:1830 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "Rendelve" @@ -4643,115 +4674,115 @@ msgid "Allocated" msgstr "Lefoglalva" #: part/admin.py:51 part/templates/part/part_base.html:244 -#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 -#: templates/js/translated/part.js:1385 templates/js/translated/part.js:1566 +#: templates/js/translated/part.js:619 templates/js/translated/part.js:639 +#: templates/js/translated/part.js:1656 templates/js/translated/part.js:1837 msgid "Building" msgstr "Gyártásban" -#: part/admin.py:52 part/models.py:2846 +#: part/admin.py:52 part/models.py:2864 msgid "Minimum Cost" msgstr "Minimum költség" -#: part/admin.py:53 part/models.py:2852 +#: part/admin.py:53 part/models.py:2870 msgid "Maximum Cost" msgstr "Maximum költség" -#: part/admin.py:142 part/admin.py:216 stock/admin.py:26 stock/admin.py:98 +#: part/admin.py:175 part/admin.py:249 stock/admin.py:26 stock/admin.py:98 msgid "Parent ID" msgstr "Szülő ID" -#: part/admin.py:143 part/admin.py:218 stock/admin.py:27 +#: part/admin.py:176 part/admin.py:251 stock/admin.py:27 msgid "Parent Name" msgstr "Szülő neve" -#: part/admin.py:146 part/templates/part/category.html:81 +#: part/admin.py:179 part/templates/part/category.html:81 #: part/templates/part/category.html:94 msgid "Category Path" msgstr "Kategória elérési út" -#: part/admin.py:149 part/models.py:382 part/templates/part/cat_link.html:3 +#: part/admin.py:182 part/models.py:383 part/templates/part/cat_link.html:3 #: part/templates/part/category.html:23 part/templates/part/category.html:134 #: part/templates/part/category.html:154 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:84 -#: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:2065 templates/js/translated/search.js:146 +#: templates/InvenTree/settings/sidebar.html:43 +#: templates/js/translated/part.js:2346 templates/js/translated/search.js:146 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "Alkatrészek" -#: part/admin.py:211 +#: part/admin.py:244 msgid "BOM Level" msgstr "Alkatrészjegyzék szint" -#: part/admin.py:213 +#: part/admin.py:246 msgid "BOM Item ID" msgstr "Alkatrészjegyzék tétel ID" -#: part/admin.py:217 +#: part/admin.py:250 msgid "Parent IPN" msgstr "Szülő IPN" -#: part/admin.py:220 part/models.py:3270 +#: part/admin.py:253 part/models.py:3348 msgid "Part IPN" msgstr "Alkatrész IPN" -#: part/admin.py:226 templates/js/translated/pricing.js:91 +#: part/admin.py:259 templates/js/translated/pricing.js:91 #: templates/js/translated/pricing.js:732 msgid "Minimum Price" msgstr "Minimum ár" -#: part/admin.py:227 templates/js/translated/pricing.js:86 +#: part/admin.py:260 templates/js/translated/pricing.js:86 #: templates/js/translated/pricing.js:740 msgid "Maximum Price" msgstr "Maximum ár" -#: part/api.py:536 +#: part/api.py:538 msgid "Incoming Purchase Order" msgstr "Beérkező beszerzési rendelés" -#: part/api.py:556 +#: part/api.py:558 msgid "Outgoing Sales Order" msgstr "Kimenő vevői rendelés" -#: part/api.py:574 +#: part/api.py:576 msgid "Stock produced by Build Order" msgstr "Gyártással előállított készlet" -#: part/api.py:660 +#: part/api.py:662 msgid "Stock required for Build Order" msgstr "A gyártási utasításhoz szükséges készlet" -#: part/api.py:818 +#: part/api.py:820 msgid "Valid" msgstr "Érvényes" -#: part/api.py:819 +#: part/api.py:821 msgid "Validate entire Bill of Materials" msgstr "Teljes alkatrészjegyzék jóváhagyása" -#: part/api.py:825 +#: part/api.py:827 msgid "This option must be selected" msgstr "Ennek az opciónak ki kll lennie választva" -#: part/api.py:1265 +#: part/api.py:1281 msgid "Must be greater than zero" msgstr "Nullánál nagyobb kell legyen" -#: part/api.py:1269 +#: part/api.py:1285 msgid "Must be a valid quantity" msgstr "Érvényes mennyiségnek kell lennie" -#: part/api.py:1284 +#: part/api.py:1300 msgid "Specify location for initial part stock" msgstr "Hely megadása a kezdeti alkarész készlethez" -#: part/api.py:1315 part/api.py:1319 part/api.py:1334 part/api.py:1338 +#: part/api.py:1331 part/api.py:1335 part/api.py:1350 part/api.py:1354 msgid "This field is required" msgstr "Ez a mező kötelező" -#: part/bom.py:142 part/models.py:116 part/models.py:887 -#: part/templates/part/category.html:109 part/templates/part/part_base.html:360 +#: part/bom.py:142 part/models.py:116 part/models.py:888 +#: part/templates/part/category.html:109 part/templates/part/part_base.html:374 msgid "Default Location" msgstr "Alapértelmezett hely" @@ -4802,7 +4833,7 @@ msgstr "Ikon (opcionális)" 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:159 part/models.py:3211 part/templates/part/category.html:16 +#: part/models.py:159 part/models.py:3289 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "Alkatrész kategória" @@ -4813,423 +4844,459 @@ msgstr "Alkatrész kategória" msgid "Part Categories" msgstr "Alkatrész kategóriák" -#: part/models.py:468 +#: part/models.py:469 msgid "Invalid choice for parent part" msgstr "Hibás választás a szülő alkatrészre" -#: part/models.py:538 part/models.py:550 +#: part/models.py:539 part/models.py:551 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "A '{p1}' alkatrész a '{p2}' alkatrészjegyzékében már szerepel (rekurzív)" -#: part/models.py:640 +#: part/models.py:641 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:771 +#: part/models.py:772 msgid "Duplicate IPN not allowed in part settings" msgstr "Azonos IPN nem engedélyezett az alkatrész beállításokban" -#: part/models.py:776 +#: part/models.py:777 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:790 +#: part/models.py:791 msgid "Parts cannot be assigned to structural part categories!" msgstr "Szerkezeti kategóriákhoz nem lehet alkatrészeket rendelni!" -#: part/models.py:808 part/models.py:3267 +#: part/models.py:809 part/models.py:3345 msgid "Part name" msgstr "Alkatrész neve" -#: part/models.py:815 +#: part/models.py:816 msgid "Is Template" msgstr "Sablon-e" -#: part/models.py:816 +#: part/models.py:817 msgid "Is this part a template part?" msgstr "Ez egy sablon alkatrész?" -#: part/models.py:826 +#: part/models.py:827 msgid "Is this part a variant of another part?" msgstr "Ez az alkatrész egy másik változata?" -#: part/models.py:827 +#: part/models.py:828 msgid "Variant Of" msgstr "Ebből a sablonból" -#: part/models.py:833 +#: part/models.py:834 msgid "Part description" msgstr "Alkatrész leírása" -#: part/models.py:839 +#: part/models.py:840 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:846 part/models.py:2966 part/models.py:3210 +#: part/models.py:847 part/models.py:3044 part/models.py:3288 #: part/templates/part/part_base.html:263 -#: templates/InvenTree/settings/settings.html:229 +#: templates/InvenTree/settings/settings.html:230 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1513 templates/js/translated/part.js:1770 +#: templates/js/translated/part.js:1784 templates/js/translated/part.js:2051 msgid "Category" msgstr "Kategória" -#: part/models.py:847 +#: part/models.py:848 msgid "Part category" msgstr "Alkatrész kategória" -#: part/models.py:853 +#: part/models.py:854 msgid "Internal Part Number" msgstr "Belső cikkszám" -#: part/models.py:859 +#: part/models.py:860 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:885 +#: part/models.py:886 msgid "Where is this item normally stored?" msgstr "Alapban hol tároljuk ezt az alkatrészt?" -#: part/models.py:930 part/templates/part/part_base.html:369 +#: part/models.py:931 part/templates/part/part_base.html:383 msgid "Default Supplier" msgstr "Alapértelmezett beszállító" -#: part/models.py:931 +#: part/models.py:932 msgid "Default supplier part" msgstr "Alapértelmezett beszállítói alkatrész" -#: part/models.py:938 +#: part/models.py:939 msgid "Default Expiry" msgstr "Alapértelmezett lejárat" -#: part/models.py:939 +#: part/models.py:940 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:945 +#: part/models.py:946 msgid "Minimum allowed stock level" msgstr "Minimálisan megengedett készlet mennyiség" -#: part/models.py:952 +#: part/models.py:953 msgid "Stock keeping units for this part" msgstr "Az alkatrész raktározási mértékegységei" -#: part/models.py:958 +#: part/models.py:959 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:964 +#: part/models.py:965 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:970 +#: part/models.py:971 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:975 +#: part/models.py:976 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:980 +#: part/models.py:981 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:985 +#: part/models.py:986 msgid "Is this part active?" msgstr "Aktív-e ez az alkatrész?" -#: part/models.py:990 +#: part/models.py:991 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:992 +#: part/models.py:993 msgid "Part notes" msgstr "Alkatrész megjegyzések" -#: part/models.py:994 +#: part/models.py:995 msgid "BOM checksum" msgstr "Alkatrészjegyzék ellenőrző összeg" -#: part/models.py:994 +#: part/models.py:995 msgid "Stored BOM checksum" msgstr "Tárolt alkatrészjegyzék ellenőrző összeg" -#: part/models.py:997 +#: part/models.py:998 msgid "BOM checked by" msgstr "Alkatrészjegyzéket ellenőrizte" -#: part/models.py:999 +#: part/models.py:1000 msgid "BOM checked date" msgstr "Alkatrészjegyzék ellenőrzési dátuma" -#: part/models.py:1003 +#: part/models.py:1004 msgid "Creation User" msgstr "Létrehozó" -#: part/models.py:1863 +#: part/models.py:1010 part/templates/part/part_base.html:345 +#: stock/templates/stock/item_base.html:445 +#: templates/js/translated/part.js:1901 +msgid "Last Stocktake" +msgstr "Utolsó leltár" + +#: part/models.py:1869 msgid "Sell multiple" msgstr "Több értékesítése" -#: part/models.py:2763 +#: part/models.py:2781 msgid "Currency used to cache pricing calculations" msgstr "Árszámítások gyorstárazásához használt pénznem" -#: part/models.py:2768 +#: part/models.py:2786 templates/js/translated/part.js:806 msgid "Updated" msgstr "Frissítve" -#: part/models.py:2769 +#: part/models.py:2787 msgid "Timestamp of last pricing update" msgstr "Legutóbbi ár frissítés időpontja" -#: part/models.py:2786 +#: part/models.py:2804 msgid "Minimum BOM Cost" msgstr "Minimum alkatrészjegyzék költség" -#: part/models.py:2787 +#: part/models.py:2805 msgid "Minimum cost of component parts" msgstr "Összetevők minimum költsége" -#: part/models.py:2792 +#: part/models.py:2810 msgid "Maximum BOM Cost" msgstr "Maximum alkatrészjegyzék költség" -#: part/models.py:2793 +#: part/models.py:2811 msgid "Maximum cost of component parts" msgstr "Összetevők maximum költsége" -#: part/models.py:2798 +#: part/models.py:2816 msgid "Minimum Purchase Cost" msgstr "Minimum beszerzési ár" -#: part/models.py:2799 +#: part/models.py:2817 msgid "Minimum historical purchase cost" msgstr "Eddigi minimum beszerzési költség" -#: part/models.py:2804 +#: part/models.py:2822 msgid "Maximum Purchase Cost" msgstr "Maximum beszerzési ár" -#: part/models.py:2805 +#: part/models.py:2823 msgid "Maximum historical purchase cost" msgstr "Eddigi maximum beszerzési költség" -#: part/models.py:2810 +#: part/models.py:2828 msgid "Minimum Internal Price" msgstr "Minimum belső ár" -#: part/models.py:2811 +#: part/models.py:2829 msgid "Minimum cost based on internal price breaks" msgstr "Minimum költség a belső ársávok alapján" -#: part/models.py:2816 +#: part/models.py:2834 msgid "Maximum Internal Price" msgstr "Maximum belső ár" -#: part/models.py:2817 +#: part/models.py:2835 msgid "Maximum cost based on internal price breaks" msgstr "Maximum költség a belső ársávok alapján" -#: part/models.py:2822 +#: part/models.py:2840 msgid "Minimum Supplier Price" msgstr "Minimum beszállítói ár" -#: part/models.py:2823 +#: part/models.py:2841 msgid "Minimum price of part from external suppliers" msgstr "Minimum alkatrész ár a beszállítóktól" -#: part/models.py:2828 +#: part/models.py:2846 msgid "Maximum Supplier Price" msgstr "Maximum beszállítói ár" -#: part/models.py:2829 +#: part/models.py:2847 msgid "Maximum price of part from external suppliers" msgstr "Maximum alkatrész ár a beszállítóktól" -#: part/models.py:2834 +#: part/models.py:2852 msgid "Minimum Variant Cost" msgstr "Minimum alkatrészváltozat ár" -#: part/models.py:2835 +#: part/models.py:2853 msgid "Calculated minimum cost of variant parts" msgstr "Alkatrészváltozatok számolt minimum költsége" -#: part/models.py:2840 +#: part/models.py:2858 msgid "Maximum Variant Cost" msgstr "Maximum alkatrészváltozat ár" -#: part/models.py:2841 +#: part/models.py:2859 msgid "Calculated maximum cost of variant parts" msgstr "Alkatrészváltozatok számolt maximum költsége" -#: part/models.py:2847 +#: part/models.py:2865 msgid "Calculated overall minimum cost" msgstr "Számított általános minimum költség" -#: part/models.py:2853 +#: part/models.py:2871 msgid "Calculated overall maximum cost" msgstr "Számított általános maximum költség" -#: part/models.py:2858 +#: part/models.py:2876 msgid "Minimum Sale Price" msgstr "Minimum eladási ár" -#: part/models.py:2859 +#: part/models.py:2877 msgid "Minimum sale price based on price breaks" msgstr "Minimum eladási ár az ársávok alapján" -#: part/models.py:2864 +#: part/models.py:2882 msgid "Maximum Sale Price" msgstr "Maximum eladási ár" -#: part/models.py:2865 +#: part/models.py:2883 msgid "Maximum sale price based on price breaks" msgstr "Maximum eladási ár az ársávok alapján" -#: part/models.py:2870 +#: part/models.py:2888 msgid "Minimum Sale Cost" msgstr "Minimum eladási költség" -#: part/models.py:2871 +#: part/models.py:2889 msgid "Minimum historical sale price" msgstr "Eddigi minimum eladási ár" -#: part/models.py:2876 +#: part/models.py:2894 msgid "Maximum Sale Cost" msgstr "Maximum eladási költség" -#: part/models.py:2877 +#: part/models.py:2895 msgid "Maximum historical sale price" msgstr "Eddigi maximum eladási ár" -#: part/models.py:3013 +#: part/models.py:2913 +msgid "Part for stocktake" +msgstr "Leltározható alkatrész" + +#: part/models.py:2920 +msgid "Total available stock at time of stocktake" +msgstr "Teljes készlet a leltárkor" + +#: part/models.py:2924 part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:63 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:2043 templates/js/translated/part.js:887 +#: templates/js/translated/pricing.js:537 +#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2511 +msgid "Date" +msgstr "Dátum" + +#: part/models.py:2925 +msgid "Date stocktake was performed" +msgstr "Leltározva ekkor" + +#: part/models.py:2933 +msgid "Additional notes" +msgstr "További megjegyzések" + +#: part/models.py:2941 +msgid "User who performed this stocktake" +msgstr "Leltározta" + +#: part/models.py:3091 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:3030 +#: part/models.py:3108 msgid "Test with this name already exists for this part" msgstr "Erre az alkatrészre már létezik teszt ilyen névvel" -#: part/models.py:3050 templates/js/translated/part.js:2116 -#: templates/js/translated/stock.js:1379 +#: part/models.py:3128 templates/js/translated/part.js:2397 +#: templates/js/translated/stock.js:1378 msgid "Test Name" msgstr "Teszt név" -#: part/models.py:3051 +#: part/models.py:3129 msgid "Enter a name for the test" msgstr "Add meg a teszt nevét" -#: part/models.py:3056 +#: part/models.py:3134 msgid "Test Description" msgstr "Teszt leírása" -#: part/models.py:3057 +#: part/models.py:3135 msgid "Enter description for this test" msgstr "Adj hozzá egy leírást ehhez a teszthez" -#: part/models.py:3062 templates/js/translated/part.js:2125 +#: part/models.py:3140 templates/js/translated/part.js:2406 #: templates/js/translated/table_filters.js:322 msgid "Required" msgstr "Kötelező" -#: part/models.py:3063 +#: part/models.py:3141 msgid "Is this test required to pass?" msgstr "Szükséges-e hogy ez a teszt sikeres legyen?" -#: part/models.py:3068 templates/js/translated/part.js:2133 +#: part/models.py:3146 templates/js/translated/part.js:2414 msgid "Requires Value" msgstr "Kötelező érték" -#: part/models.py:3069 +#: part/models.py:3147 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:3074 templates/js/translated/part.js:2140 +#: part/models.py:3152 templates/js/translated/part.js:2421 msgid "Requires Attachment" msgstr "Kötelező melléklet" -#: part/models.py:3075 +#: part/models.py:3153 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:3116 +#: part/models.py:3194 msgid "Parameter template name must be unique" msgstr "A paraméter sablon nevének egyedinek kell lennie" -#: part/models.py:3124 +#: part/models.py:3202 msgid "Parameter Name" msgstr "Paraméter neve" -#: part/models.py:3128 +#: part/models.py:3206 msgid "Parameter Units" msgstr "Paraméter mértékegysége" -#: part/models.py:3133 +#: part/models.py:3211 msgid "Parameter description" msgstr "Paraméter leírása" -#: part/models.py:3166 +#: part/models.py:3244 msgid "Parent Part" msgstr "Szülő alkatrész" -#: part/models.py:3168 part/models.py:3216 part/models.py:3217 -#: templates/InvenTree/settings/settings.html:224 +#: part/models.py:3246 part/models.py:3294 part/models.py:3295 +#: templates/InvenTree/settings/settings.html:225 msgid "Parameter Template" msgstr "Paraméter sablon" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Data" msgstr "Adat" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Parameter Value" msgstr "Paraméter értéke" -#: part/models.py:3221 templates/InvenTree/settings/settings.html:233 +#: part/models.py:3299 templates/InvenTree/settings/settings.html:234 msgid "Default Value" msgstr "Alapértelmezett érték" -#: part/models.py:3222 +#: part/models.py:3300 msgid "Default Parameter Value" msgstr "Alapértelmezett paraméter érték" -#: part/models.py:3259 +#: part/models.py:3337 msgid "Part ID or part name" msgstr "Alkatrész ID vagy alkatrész név" -#: part/models.py:3263 +#: part/models.py:3341 msgid "Unique part ID value" msgstr "Egyedi alkatrész ID értéke" -#: part/models.py:3271 +#: part/models.py:3349 msgid "Part IPN value" msgstr "Alkatrész IPN érték" -#: part/models.py:3274 +#: part/models.py:3352 msgid "Level" msgstr "Szint" -#: part/models.py:3275 +#: part/models.py:3353 msgid "BOM level" msgstr "Alkatrészjegyzék szint" -#: part/models.py:3344 +#: part/models.py:3422 msgid "Select parent part" msgstr "Szülő alkatrész kiválasztása" -#: part/models.py:3352 +#: part/models.py:3430 msgid "Sub part" msgstr "Al alkatrész" -#: part/models.py:3353 +#: part/models.py:3431 msgid "Select part to be used in BOM" msgstr "Válaszd ki az alkatrészjegyzékben használandó alkatrészt" -#: part/models.py:3359 +#: part/models.py:3437 msgid "BOM quantity for this BOM item" msgstr "Alkatrészjegyzék mennyiség ehhez az alkatrészjegyzék tételhez" -#: part/models.py:3363 part/templates/part/upload_bom.html:58 +#: part/models.py:3441 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:933 templates/js/translated/bom.js:986 #: templates/js/translated/build.js:1868 #: templates/js/translated/table_filters.js:84 @@ -5237,189 +5304,189 @@ msgstr "Alkatrészjegyzék mennyiség ehhez az alkatrészjegyzék tételhez" msgid "Optional" msgstr "Opcionális" -#: part/models.py:3364 +#: part/models.py:3442 msgid "This BOM item is optional" msgstr "Ez az alkatrészjegyzék tétel opcionális" -#: part/models.py:3369 templates/js/translated/bom.js:929 +#: part/models.py:3447 templates/js/translated/bom.js:929 #: templates/js/translated/bom.js:995 templates/js/translated/build.js:1859 #: templates/js/translated/table_filters.js:88 msgid "Consumable" msgstr "Fogyóeszköz" -#: part/models.py:3370 +#: part/models.py:3448 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:3374 part/templates/part/upload_bom.html:55 +#: part/models.py:3452 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "Többlet" -#: part/models.py:3375 +#: part/models.py:3453 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:3378 +#: part/models.py:3456 msgid "BOM item reference" msgstr "Alkatrészjegyzék tétel azonosító" -#: part/models.py:3381 +#: part/models.py:3459 msgid "BOM item notes" msgstr "Alkatrészjegyzék tétel megjegyzései" -#: part/models.py:3383 +#: part/models.py:3461 msgid "Checksum" msgstr "Ellenőrző összeg" -#: part/models.py:3383 +#: part/models.py:3461 msgid "BOM line checksum" msgstr "Alkatrészjegyzék sor ellenőrző összeg" -#: part/models.py:3387 part/templates/part/upload_bom.html:57 +#: part/models.py:3465 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1012 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:108 msgid "Inherited" msgstr "Örökölt" -#: part/models.py:3388 +#: part/models.py:3466 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:3393 part/templates/part/upload_bom.html:56 +#: part/models.py:3471 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1004 msgid "Allow Variants" msgstr "Változatok" -#: part/models.py:3394 +#: part/models.py:3472 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:3480 stock/models.py:558 +#: part/models.py:3558 stock/models.py:558 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:3489 part/models.py:3491 +#: part/models.py:3567 part/models.py:3569 msgid "Sub part must be specified" msgstr "Al alkatrészt kötelező megadni" -#: part/models.py:3618 +#: part/models.py:3696 msgid "BOM Item Substitute" msgstr "Alkatrészjegyzék tétel helyettesítő" -#: part/models.py:3639 +#: part/models.py:3717 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:3652 +#: part/models.py:3730 msgid "Parent BOM item" msgstr "Szülő alkatrészjegyzék tétel" -#: part/models.py:3660 +#: part/models.py:3738 msgid "Substitute part" msgstr "Helyettesítő alkatrész" -#: part/models.py:3675 +#: part/models.py:3753 msgid "Part 1" msgstr "1.rész" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Part 2" msgstr "2.rész" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Select Related Part" msgstr "Válassz kapcsolódó alkatrészt" -#: part/models.py:3697 +#: part/models.py:3775 msgid "Part relationship cannot be created between a part and itself" msgstr "Alkatrész kapcsolat nem hozható létre önmagával" -#: part/models.py:3701 +#: part/models.py:3779 msgid "Duplicate relationship already exists" msgstr "Már létezik duplikált alkatrész kapcsolat" -#: part/serializers.py:155 part/serializers.py:183 stock/serializers.py:183 +#: part/serializers.py:157 part/serializers.py:185 stock/serializers.py:183 msgid "Purchase currency of this stock item" msgstr "Beszerzési pénzneme ennek a készlet tételnek" -#: part/serializers.py:543 +#: part/serializers.py:584 msgid "Update" msgstr "Frissítés" -#: part/serializers.py:544 +#: part/serializers.py:585 msgid "Update pricing for this part" msgstr "Alkatrész árak frissítése" -#: part/serializers.py:854 +#: part/serializers.py:895 msgid "Select part to copy BOM from" msgstr "Válassz alkatrészt ahonnan az alkatrészjegyzéket másoljuk" -#: part/serializers.py:862 +#: part/serializers.py:903 msgid "Remove Existing Data" msgstr "Létező adat törlése" -#: part/serializers.py:863 +#: part/serializers.py:904 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:868 +#: part/serializers.py:909 msgid "Include Inherited" msgstr "Örököltekkel együtt" -#: part/serializers.py:869 +#: part/serializers.py:910 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:874 +#: part/serializers.py:915 msgid "Skip Invalid Rows" msgstr "Hibás sorok kihagyása" -#: part/serializers.py:875 +#: part/serializers.py:916 msgid "Enable this option to skip invalid rows" msgstr "Engedély a hibás sorok kihagyására" -#: part/serializers.py:880 +#: part/serializers.py:921 msgid "Copy Substitute Parts" msgstr "Helyettesítő alkatrészek másolása" -#: part/serializers.py:881 +#: part/serializers.py:922 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:921 +#: part/serializers.py:962 msgid "Clear Existing BOM" msgstr "Meglévő alkatrészjegyzék törlése" -#: part/serializers.py:922 +#: part/serializers.py:963 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:952 +#: part/serializers.py:993 msgid "No part column specified" msgstr "Nincs megadva alkatrész oszlop" -#: part/serializers.py:995 +#: part/serializers.py:1036 msgid "Multiple matching parts found" msgstr "Több egyező alkatrész is található" -#: part/serializers.py:998 +#: part/serializers.py:1039 msgid "No matching part found" msgstr "Nincs egyező alkatrész" -#: part/serializers.py:1001 +#: part/serializers.py:1042 msgid "Part is not designated as a component" msgstr "Az alkatrész nem lett összetevőként jelölve" -#: part/serializers.py:1010 +#: part/serializers.py:1051 msgid "Quantity not provided" msgstr "Mennyiség nincs megadva" -#: part/serializers.py:1018 +#: part/serializers.py:1059 msgid "Invalid quantity" msgstr "Érvénytelen mennyiség" -#: part/serializers.py:1039 +#: part/serializers.py:1080 msgid "At least one BOM item is required" msgstr "Legalább egy alkatrészjegyzék tétel szükséges" @@ -5451,7 +5518,7 @@ msgstr "A %(part)s alkatrészhez tartozó alkatrészjegyzéket utoljár msgid "The BOM for %(part)s has not been validated." msgstr "A %(part)s alkatrészhez tartozó alkatrészjegyzék még nincs jóváhagyva." -#: part/templates/part/bom.html:30 part/templates/part/detail.html:267 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:290 msgid "BOM actions" msgstr "Alkatrészjegyzék műveletek" @@ -5508,8 +5575,8 @@ msgstr "Alkatrész létrehozása" msgid "New Part" msgstr "Új alkatrész" -#: part/templates/part/category.html:169 part/templates/part/detail.html:366 -#: part/templates/part/detail.html:397 +#: part/templates/part/category.html:169 part/templates/part/detail.html:389 +#: part/templates/part/detail.html:420 msgid "Options" msgstr "Opciók" @@ -5557,7 +5624,7 @@ msgstr "Alkatrész sikeresen létrehozva" msgid "Import Parts" msgstr "Alkatrészek importálása" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:404 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:407 msgid "Duplicate Part" msgstr "Alkatrész másolása" @@ -5594,119 +5661,129 @@ msgstr "Ütemezési adatok frissítése" msgid "Refresh" msgstr "Frissítés" -#: part/templates/part/detail.html:59 +#: part/templates/part/detail.html:65 +msgid "Add stocktake information" +msgstr "Leltár információ hozzáadása" + +#: part/templates/part/detail.html:66 part/templates/part/part_sidebar.html:49 +#: stock/admin.py:107 templates/js/translated/stock.js:1905 +msgid "Stocktake" +msgstr "Leltár" + +#: part/templates/part/detail.html:82 msgid "Part Test Templates" msgstr "Alkatrész teszt sablonok" -#: part/templates/part/detail.html:64 +#: part/templates/part/detail.html:87 msgid "Add Test Template" msgstr "Teszt sablon hozzáadása" -#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:144 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "Vevői rendeléshez foglalások" -#: part/templates/part/detail.html:141 +#: part/templates/part/detail.html:164 msgid "Part Notes" msgstr "Alkatrész megjegyzések" -#: part/templates/part/detail.html:156 +#: part/templates/part/detail.html:179 msgid "Part Variants" msgstr "Alkatrész változatok" -#: part/templates/part/detail.html:160 +#: part/templates/part/detail.html:183 msgid "Create new variant" msgstr "Új változat létrehozása" -#: part/templates/part/detail.html:161 +#: part/templates/part/detail.html:184 msgid "New Variant" msgstr "Új változat" -#: part/templates/part/detail.html:188 +#: part/templates/part/detail.html:211 msgid "Add new parameter" msgstr "Paraméter hozzáadása" -#: part/templates/part/detail.html:225 part/templates/part/part_sidebar.html:52 +#: part/templates/part/detail.html:248 part/templates/part/part_sidebar.html:57 msgid "Related Parts" msgstr "Kapcsolódó alkatrészek" -#: part/templates/part/detail.html:229 part/templates/part/detail.html:230 +#: part/templates/part/detail.html:252 part/templates/part/detail.html:253 msgid "Add Related" msgstr "Kapcsolódó hozzáadása" -#: part/templates/part/detail.html:250 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:273 part/templates/part/part_sidebar.html:17 +#: report/templates/report/inventree_bill_of_materials_report.html:100 msgid "Bill of Materials" msgstr "Alkatrészjegyzék" -#: part/templates/part/detail.html:255 +#: part/templates/part/detail.html:278 msgid "Export actions" msgstr "Exportálási műveletek" -#: part/templates/part/detail.html:259 templates/js/translated/bom.js:309 +#: part/templates/part/detail.html:282 templates/js/translated/bom.js:309 msgid "Export BOM" msgstr "Alkatrészjegyzék exportálása" -#: part/templates/part/detail.html:261 +#: part/templates/part/detail.html:284 msgid "Print BOM Report" msgstr "Alkatrészjegyzék riport nyomtatása" -#: part/templates/part/detail.html:271 +#: part/templates/part/detail.html:294 msgid "Upload BOM" msgstr "Alkatrészjegyzék feltöltése" -#: part/templates/part/detail.html:272 templates/js/translated/part.js:276 +#: part/templates/part/detail.html:295 templates/js/translated/part.js:279 msgid "Copy BOM" msgstr "Alkatrészjegyzék másolása" -#: part/templates/part/detail.html:273 +#: part/templates/part/detail.html:296 msgid "Validate BOM" msgstr "Alkatrészjegyzék jóváhagyása" -#: part/templates/part/detail.html:278 part/templates/part/detail.html:279 +#: part/templates/part/detail.html:301 part/templates/part/detail.html:302 #: templates/js/translated/bom.js:1268 templates/js/translated/bom.js:1269 msgid "Add BOM Item" msgstr "Alkatrészjegyzék tétel hozzáadása" -#: part/templates/part/detail.html:292 +#: part/templates/part/detail.html:315 msgid "Assemblies" msgstr "Gyártmányok" -#: part/templates/part/detail.html:310 +#: part/templates/part/detail.html:333 msgid "Part Builds" msgstr "Alkatrész gyártások" -#: part/templates/part/detail.html:337 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:360 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "Gyártáshoz foglalások" -#: part/templates/part/detail.html:353 +#: part/templates/part/detail.html:376 msgid "Part Suppliers" msgstr "Alkatrész beszállítók" -#: part/templates/part/detail.html:383 +#: part/templates/part/detail.html:406 msgid "Part Manufacturers" msgstr "Alkatrész gyártók" -#: part/templates/part/detail.html:399 +#: part/templates/part/detail.html:422 msgid "Delete manufacturer parts" msgstr "Gyártói alkatrészek törlése" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:696 msgid "Related Part" msgstr "Kapcsolódó alkatrész" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:704 msgid "Add Related Part" msgstr "Kapcsolódó alkatrész hozzáadása" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:796 msgid "Add Test Result Template" msgstr "Teszt eredmény sablon hozzáadása" #: part/templates/part/import_wizard/ajax_part_upload.html:29 #: part/templates/part/import_wizard/part_upload.html:14 -msgid "Unsuffitient privileges." -msgstr "Nincs megfelelő jogosultság." +msgid "Insufficient privileges." +msgstr "" #: part/templates/part/import_wizard/part_upload.html:8 msgid "Return to Parts" @@ -5716,6 +5793,34 @@ msgstr "Vissza az alkatrészekhez" msgid "Import Parts from File" msgstr "Alkatrészek importálása fájlból" +#: part/templates/part/import_wizard/part_upload.html:31 +msgid "Requirements for part import" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "The part import file must contain the required named columns as provided in the " +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:89 +msgid "Download Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:92 +#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 +#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 +msgid "Format" +msgstr "Formátum" + +#: part/templates/part/import_wizard/part_upload.html:93 +#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 +#: templates/js/translated/order.js:999 +msgid "Select file format" +msgstr "Fájlfomátum kiválasztása" + #: part/templates/part/part_app_base.html:12 msgid "Part List" msgstr "Alkatrész lista" @@ -5805,12 +5910,12 @@ msgstr "Virtuális (nem kézzelfogható alkatrész)" #: templates/js/translated/company.js:660 #: templates/js/translated/company.js:921 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:677 templates/js/translated/part.js:755 +#: templates/js/translated/part.js:680 templates/js/translated/part.js:1026 msgid "Inactive" msgstr "Inaktív" #: part/templates/part/part_base.html:165 -#: part/templates/part/part_base.html:666 +#: part/templates/part/part_base.html:680 msgid "Show Part Details" msgstr "Alkatrész részletei" @@ -5838,38 +5943,38 @@ msgid "Minimum stock level" msgstr "Minimális készlet" #: part/templates/part/part_base.html:330 templates/js/translated/bom.js:1032 -#: templates/js/translated/part.js:798 templates/js/translated/part.js:1604 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:1875 #: templates/js/translated/pricing.js:124 #: templates/js/translated/pricing.js:762 msgid "Price Range" msgstr "Ártartomány" -#: part/templates/part/part_base.html:345 +#: part/templates/part/part_base.html:359 msgid "Latest Serial Number" msgstr "Legutolsó sorozatszám" -#: part/templates/part/part_base.html:349 +#: part/templates/part/part_base.html:363 #: stock/templates/stock/item_base.html:331 msgid "Search for serial number" msgstr "Sorozatszámra keresés" -#: part/templates/part/part_base.html:449 +#: part/templates/part/part_base.html:463 msgid "Link Barcode to Part" msgstr "Vonalkód hozzárendelése az alkatrészhez" -#: part/templates/part/part_base.html:495 +#: part/templates/part/part_base.html:509 msgid "Calculate" msgstr "Számítás" -#: part/templates/part/part_base.html:512 +#: part/templates/part/part_base.html:526 msgid "Remove associated image from this part" msgstr "Alkatrészhez rendelt kép eltávolítása" -#: part/templates/part/part_base.html:564 +#: part/templates/part/part_base.html:578 msgid "No matching images found" msgstr "Nincs egyező kép" -#: part/templates/part/part_base.html:660 +#: part/templates/part/part_base.html:674 msgid "Hide Part Details" msgstr "Részletek elrejtése" @@ -5921,15 +6026,6 @@ msgstr "Belső ár" msgid "No pricing information is available for this part." msgstr "Az alkatrészhez nem áll rendelkezésre árinformáció." -#: part/templates/part/part_scheduling.html:13 -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:63 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:2043 templates/js/translated/pricing.js:537 -#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2516 -msgid "Date" -msgstr "Dátum" - #: part/templates/part/part_scheduling.html:14 msgid "Scheduled Quantity" msgstr "Ütemezett mennyiség" @@ -5942,7 +6038,7 @@ msgstr "Változatok" msgid "Scheduling" msgstr "Ütemezés" -#: part/templates/part/part_sidebar.html:48 +#: part/templates/part/part_sidebar.html:53 msgid "Test Templates" msgstr "Teszt sablonok" @@ -5961,7 +6057,7 @@ msgstr "Árazás frissítése" #: part/templates/part/prices.html:25 stock/admin.py:106 #: stock/templates/stock/item_base.html:440 #: templates/js/translated/company.js:1039 -#: templates/js/translated/stock.js:1940 +#: templates/js/translated/stock.js:1935 msgid "Last Updated" msgstr "Utoljára módosítva" @@ -6024,8 +6120,8 @@ msgstr "Eladási ár" msgid "Add Sell Price Break" msgstr "Eladási ársáv hozzáadása" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:639 -#: templates/js/translated/part.js:1373 templates/js/translated/part.js:1375 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:1644 templates/js/translated/part.js:1646 msgid "No Stock" msgstr "Nincs készlet" @@ -6088,27 +6184,32 @@ msgstr "Ismeretlen adatbázis" msgid "{title} v{version}" msgstr "{title} v{version}" -#: part/views.py:109 +#: part/views.py:111 msgid "Match References" msgstr "Azonosítók egyeztetése" -#: part/views.py:354 +#: part/views.py:239 +#, python-brace-format +msgid "Can't import part {name} because there is no category assigned" +msgstr "" + +#: part/views.py:378 msgid "Part QR Code" msgstr "Alkatrész QR kódja" -#: part/views.py:372 +#: part/views.py:396 msgid "Select Part Image" msgstr "Válassz képet az alkatrészhez" -#: part/views.py:398 +#: part/views.py:422 msgid "Updated part image" msgstr "Alkatrész képe frissítve" -#: part/views.py:401 +#: part/views.py:425 msgid "Part image not found" msgstr "Az alkatrész képe nem található" -#: part/views.py:493 +#: part/views.py:517 msgid "Part Pricing" msgstr "Alkatrész árak" @@ -6157,28 +6258,48 @@ msgid "Provides native support for barcodes" msgstr "Alapvető vonalkód támogatást ad" #: plugin/builtin/barcodes/inventree_barcode.py:29 -#: plugin/builtin/integration/core_notifications.py:31 +#: plugin/builtin/integration/core_notifications.py:33 msgid "InvenTree contributors" msgstr "InvenTree fejlesztők" -#: plugin/builtin/integration/core_notifications.py:30 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "InvenTree értesítések" -#: plugin/builtin/integration/core_notifications.py:32 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notificaton methods" msgstr "Integrált kimenő értesítési módszerek" -#: plugin/builtin/integration/core_notifications.py:37 -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:80 msgid "Enable email notifications" msgstr "Email értesítések engedélyezése" -#: plugin/builtin/integration/core_notifications.py:38 -#: plugin/builtin/integration/core_notifications.py:57 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:81 msgid "Allow sending of emails for event notifications" msgstr "Email küldés engedélyezése esemény értesítésekre" +#: plugin/builtin/integration/core_notifications.py:45 +msgid "Enable slack notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:46 +msgid "Allow sending of slack channel messages for event notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:51 +msgid "Slack incoming webhook url" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:52 +msgid "URL that is used to send messages to a slack channel" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:162 +msgid "Open link" +msgstr "Link megnyitása" + #: plugin/models.py:33 msgid "Plugin Metadata" msgstr "Plugin meta adatok" @@ -6410,6 +6531,10 @@ msgstr "Riport asset fájl" msgid "Asset file description" msgstr "Asset fájl leírása" +#: report/templates/report/inventree_bill_of_materials_report.html:133 +msgid "Materials needed" +msgstr "Szükséges alapanyagok" + #: report/templates/report/inventree_build_order_base.html:146 msgid "Required For" msgstr "Szükséges ehhez" @@ -6428,7 +6553,7 @@ msgstr "Készlet tétel teszt riport" #: templates/js/translated/build.js:1244 templates/js/translated/build.js:1745 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:121 templates/js/translated/order.js:3611 -#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:522 +#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:521 msgid "Serial Number" msgstr "Sorozatszám" @@ -6460,8 +6585,9 @@ msgid "Installed Items" msgstr "Beépített tételek" #: report/templates/report/inventree_test_report_base.html:137 -#: stock/admin.py:87 templates/js/translated/stock.js:642 -#: templates/js/translated/stock.js:812 templates/js/translated/stock.js:2765 +#: stock/admin.py:87 templates/js/translated/part.js:749 +#: templates/js/translated/stock.js:641 templates/js/translated/stock.js:811 +#: templates/js/translated/stock.js:2760 msgid "Serial" msgstr "Sorozatszám" @@ -6516,13 +6642,9 @@ msgstr "Vevői rendelés ID" msgid "Purchase Order ID" msgstr "Vevői rendelés azonosító" -#: stock/admin.py:107 templates/js/translated/stock.js:1910 -msgid "Stocktake" -msgstr "Leltár" - #: stock/admin.py:108 stock/models.py:764 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/stock.js:1924 +#: templates/js/translated/stock.js:1919 msgid "Expiry Date" msgstr "Lejárati dátum" @@ -6937,7 +7059,7 @@ msgstr "Teszt adatok hozzáadása" msgid "Installed Stock Items" msgstr "Beépített készlet tételek" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2912 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2907 msgid "Install Stock Item" msgstr "Készlet tétel beépítése" @@ -6945,7 +7067,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:327 templates/js/translated/stock.js:1561 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1560 msgid "Add Test Result" msgstr "Teszt eredmény hozzáadása" @@ -7118,10 +7240,6 @@ msgstr "Ez a készlet tétel lejár %(item.expiry_date)s-n" msgid "Stale" msgstr "Állott" -#: stock/templates/stock/item_base.html:445 -msgid "Last Stocktake" -msgstr "Utolsó leltár" - #: stock/templates/stock/item_base.html:449 msgid "No stocktake performed" msgstr "Még nem volt leltározva" @@ -7395,7 +7513,8 @@ msgstr "Mind megjelölése olvasottként" #: templates/InvenTree/notifications/notifications.html:10 #: templates/InvenTree/notifications/sidebar.html:5 -#: templates/InvenTree/settings/sidebar.html:17 templates/notifications.html:5 +#: templates/InvenTree/settings/sidebar.html:17 +#: templates/InvenTree/settings/sidebar.html:35 templates/notifications.html:5 msgid "Notifications" msgstr "Értesítések" @@ -7476,6 +7595,14 @@ msgstr "Az alap URL-je ennek a pluginnak %(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:22 templates/js/translated/forms.js:646 +#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:649 msgid "Confirm" msgstr "Megerősítés" @@ -8114,7 +8241,7 @@ msgstr "Elfelejtett jelszó?" #: templates/account/login.html:53 msgid "Sign in using third-party SSO" -msgstr "" +msgstr "Bejelentkezés külső fél által használt SSO-val" #: templates/account/logout.html:5 templates/account/logout.html:8 #: templates/account/logout.html:20 @@ -8314,7 +8441,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:19 -#: templates/js/translated/part.js:2445 +#: templates/js/translated/part.js:2726 msgid "Minimum Quantity" msgstr "Minimum mennyiség" @@ -8467,7 +8594,7 @@ msgstr "Ez törli a vonalkód hozzárendelést" msgid "Unlink" msgstr "Leválasztás" -#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1089 +#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1088 msgid "Remove stock item" msgstr "Készlet tétel törlése" @@ -8549,16 +8676,6 @@ msgstr "Bezárás" msgid "Download BOM Template" msgstr "Alkarészjegyzék sablon letöltése" -#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 -#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 -msgid "Format" -msgstr "Formátum" - -#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 -#: templates/js/translated/order.js:999 -msgid "Select file format" -msgstr "Fájlfomátum kiválasztása" - #: templates/js/translated/bom.js:320 msgid "Multi Level BOM" msgstr "Többszintű alkatrészjegyzék" @@ -8689,7 +8806,7 @@ msgid "Includes variant and substitute stock" msgstr "Változatokkal és helyettesítőkkel együtt" #: templates/js/translated/bom.js:1145 templates/js/translated/build.js:1923 -#: templates/js/translated/part.js:790 templates/js/translated/part.js:1572 +#: templates/js/translated/part.js:1061 templates/js/translated/part.js:1843 msgid "Includes variant stock" msgstr "Változatokkal együtt" @@ -8774,13 +8891,13 @@ msgstr "Gyártási utasítás befejezetlen" msgid "Complete Build Order" msgstr "Gyártási utasítás befejezése" -#: templates/js/translated/build.js:317 templates/js/translated/stock.js:95 -#: templates/js/translated/stock.js:237 +#: templates/js/translated/build.js:317 templates/js/translated/stock.js:94 +#: templates/js/translated/stock.js:236 msgid "Next available serial number" msgstr "Következő szabad sorozatszám" -#: templates/js/translated/build.js:319 templates/js/translated/stock.js:97 -#: templates/js/translated/stock.js:239 +#: templates/js/translated/build.js:319 templates/js/translated/stock.js:96 +#: templates/js/translated/stock.js:238 msgid "Latest serial number" msgstr "Legutolsó sorozatszám" @@ -8988,9 +9105,9 @@ msgstr "Készlet tételek foglalása" msgid "No builds matching query" msgstr "Nincs a lekérdezéssel egyező gyártási utasítás" -#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1466 -#: templates/js/translated/part.js:2003 templates/js/translated/stock.js:1725 -#: templates/js/translated/stock.js:2428 +#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1737 +#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1724 +#: templates/js/translated/stock.js:2423 msgid "Select" msgstr "Kiválaszt" @@ -9002,7 +9119,7 @@ msgstr "Gyártás késésben van" msgid "Progress" msgstr "Haladás" -#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2695 +#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2690 msgid "No user information" msgstr "Nincs felhasználói információ" @@ -9075,34 +9192,34 @@ msgid "No manufacturer parts found" msgstr "Nincs gyártói alkatrész" #: templates/js/translated/company.js:652 -#: templates/js/translated/company.js:913 templates/js/translated/part.js:661 -#: templates/js/translated/part.js:747 +#: templates/js/translated/company.js:913 templates/js/translated/part.js:664 +#: templates/js/translated/part.js:1018 msgid "Template part" msgstr "Sablon alkatrész" #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:917 templates/js/translated/part.js:665 -#: templates/js/translated/part.js:751 +#: templates/js/translated/company.js:917 templates/js/translated/part.js:668 +#: templates/js/translated/part.js:1022 msgid "Assembled part" msgstr "Gyártmány alkatrész" -#: templates/js/translated/company.js:784 templates/js/translated/part.js:870 +#: templates/js/translated/company.js:784 templates/js/translated/part.js:1141 msgid "No parameters found" msgstr "Nem található paraméter" -#: templates/js/translated/company.js:821 templates/js/translated/part.js:912 +#: templates/js/translated/company.js:821 templates/js/translated/part.js:1183 msgid "Edit parameter" msgstr "Paraméter szerkesztése" -#: templates/js/translated/company.js:822 templates/js/translated/part.js:913 +#: templates/js/translated/company.js:822 templates/js/translated/part.js:1184 msgid "Delete parameter" msgstr "Paraméter törlése" -#: templates/js/translated/company.js:841 templates/js/translated/part.js:930 +#: templates/js/translated/company.js:841 templates/js/translated/part.js:1201 msgid "Edit Parameter" msgstr "Paraméter szerkesztése" -#: templates/js/translated/company.js:852 templates/js/translated/part.js:942 +#: templates/js/translated/company.js:852 templates/js/translated/part.js:1213 msgid "Delete Parameter" msgstr "Paraméter törlése" @@ -9182,61 +9299,61 @@ msgstr "Összes szűrő törlése" msgid "Create filter" msgstr "Szűrő létrehozása" -#: templates/js/translated/forms.js:369 templates/js/translated/forms.js:384 -#: templates/js/translated/forms.js:398 templates/js/translated/forms.js:412 +#: templates/js/translated/forms.js:372 templates/js/translated/forms.js:387 +#: templates/js/translated/forms.js:401 templates/js/translated/forms.js:415 msgid "Action Prohibited" msgstr "Művelet tiltva" -#: templates/js/translated/forms.js:371 +#: templates/js/translated/forms.js:374 msgid "Create operation not allowed" msgstr "Létrehozás nem engedélyezett" -#: templates/js/translated/forms.js:386 +#: templates/js/translated/forms.js:389 msgid "Update operation not allowed" msgstr "Módosítás nem engedélyezett" -#: templates/js/translated/forms.js:400 +#: templates/js/translated/forms.js:403 msgid "Delete operation not allowed" msgstr "Törlés nem engedélyezett" -#: templates/js/translated/forms.js:414 +#: templates/js/translated/forms.js:417 msgid "View operation not allowed" msgstr "Megtekintés nem engedélyezett" -#: templates/js/translated/forms.js:672 +#: templates/js/translated/forms.js:675 msgid "Keep this form open" msgstr "Form nyitva tartása" -#: templates/js/translated/forms.js:773 +#: templates/js/translated/forms.js:776 msgid "Enter a valid number" msgstr "Adj meg egy érvényes számot" -#: templates/js/translated/forms.js:1266 templates/modals.html:19 +#: templates/js/translated/forms.js:1269 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "Form hibák vannak" -#: templates/js/translated/forms.js:1703 +#: templates/js/translated/forms.js:1706 msgid "No results found" msgstr "Nincs eredmény" -#: templates/js/translated/forms.js:1919 templates/search.html:29 +#: templates/js/translated/forms.js:1922 templates/search.html:29 msgid "Searching" msgstr "Keresés" -#: templates/js/translated/forms.js:2172 +#: templates/js/translated/forms.js:2175 msgid "Clear input" msgstr "Bevitel törlése" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "File Column" msgstr "Fájl oszlop" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "Field Name" msgstr "Mező név" -#: templates/js/translated/forms.js:2640 +#: templates/js/translated/forms.js:2643 msgid "Select Columns" msgstr "Oszlopok kiválasztása" @@ -9257,7 +9374,7 @@ msgid "Labels sent to printer" msgstr "Címkék nyomtatónak elküldve" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1113 +#: templates/js/translated/stock.js:1112 msgid "Select Stock Items" msgstr "Készlet tételek kiválasztása" @@ -9591,7 +9708,7 @@ msgstr "Beérkezett mennyiség" msgid "Quantity to receive" msgstr "Érkező mennyiség" -#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2184 +#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2179 msgid "Stock Status" msgstr "Készlet állapota" @@ -9615,7 +9732,7 @@ msgstr "Bevételezés megerősítése" msgid "Receive Purchase Order Items" msgstr "Beszerzési rendelés tételeinek bevételezése" -#: templates/js/translated/order.js:1982 templates/js/translated/part.js:983 +#: templates/js/translated/order.js:1982 templates/js/translated/part.js:1254 msgid "No purchase orders found" msgstr "Nem található beszerzési rendelés" @@ -9648,8 +9765,8 @@ msgstr "Nem találhatók sortételek" msgid "Total" msgstr "Összesen" -#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1085 -#: templates/js/translated/part.js:1137 +#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1356 +#: templates/js/translated/part.js:1408 msgid "Total Quantity" msgstr "Teljes mennyiség" @@ -9667,11 +9784,11 @@ msgid "Total Price" msgstr "Teljes ár" #: templates/js/translated/order.js:2388 templates/js/translated/order.js:3900 -#: templates/js/translated/part.js:1121 +#: templates/js/translated/part.js:1392 msgid "This line item is overdue" msgstr "Ez a sortétel késésben van" -#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1166 +#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1437 msgid "Receive line item" msgstr "Sortétel bevételezése" @@ -9792,7 +9909,7 @@ msgid "Delete Stock Allocation" msgstr "Készlet foglalások törlése" #: templates/js/translated/order.js:3623 templates/js/translated/order.js:3712 -#: templates/js/translated/stock.js:1641 +#: templates/js/translated/stock.js:1640 msgid "Shipped to customer" msgstr "Vevőnek kiszállítva" @@ -9836,334 +9953,358 @@ msgstr "Nincs egyező sortétel" msgid "No matching lines" msgstr "Nincsenek egyező sorok" -#: templates/js/translated/part.js:52 +#: templates/js/translated/part.js:55 msgid "Part Attributes" msgstr "Alkatrész tulajdonságok" -#: templates/js/translated/part.js:56 +#: templates/js/translated/part.js:59 msgid "Part Creation Options" msgstr "Alkatrész létrehozási opciók" -#: templates/js/translated/part.js:60 +#: templates/js/translated/part.js:63 msgid "Part Duplication Options" msgstr "Alkatrész másolási opciók" -#: templates/js/translated/part.js:64 +#: templates/js/translated/part.js:67 msgid "Supplier Options" msgstr "Beszállítói opciók" -#: templates/js/translated/part.js:78 +#: templates/js/translated/part.js:81 msgid "Add Part Category" msgstr "Alkatrész kategória hozzáadása" -#: templates/js/translated/part.js:168 +#: templates/js/translated/part.js:171 msgid "Create Initial Stock" msgstr "Kezdeti készlet létrehozása" -#: templates/js/translated/part.js:169 +#: templates/js/translated/part.js:172 msgid "Create an initial stock item for this part" msgstr "Kezdeti készlet tétel létrehozása ehhez az alkatrészhez" -#: templates/js/translated/part.js:176 +#: templates/js/translated/part.js:179 msgid "Initial Stock Quantity" msgstr "Kezdeti készlet mennyiség" -#: templates/js/translated/part.js:177 +#: templates/js/translated/part.js:180 msgid "Specify initial stock quantity for this part" msgstr "Add meg a kezdeti készlet mennyiségét ennek az alkatrésznek" -#: templates/js/translated/part.js:184 +#: templates/js/translated/part.js:187 msgid "Select destination stock location" msgstr "Válassz cél készlet helyet" -#: templates/js/translated/part.js:202 +#: templates/js/translated/part.js:205 msgid "Copy Category Parameters" msgstr "Kategória paraméterek másolása" -#: templates/js/translated/part.js:203 +#: templates/js/translated/part.js:206 msgid "Copy parameter templates from selected part category" msgstr "Paraméter sablonok másolása a kiválasztott alkatrész kategóriából" -#: templates/js/translated/part.js:211 +#: templates/js/translated/part.js:214 msgid "Add Supplier Data" msgstr "Beszállító adatok hozzáadása" -#: templates/js/translated/part.js:212 +#: templates/js/translated/part.js:215 msgid "Create initial supplier data for this part" msgstr "Kezdeti beszállítói adatok létrehozása ehhez az alkatrészhez" -#: templates/js/translated/part.js:268 +#: templates/js/translated/part.js:271 msgid "Copy Image" msgstr "Kép másolása" -#: templates/js/translated/part.js:269 +#: templates/js/translated/part.js:272 msgid "Copy image from original part" msgstr "Kép másolása az eredeti alkatrészről" -#: templates/js/translated/part.js:277 +#: templates/js/translated/part.js:280 msgid "Copy bill of materials from original part" msgstr "Alkatrészjegyzék másolása az eredeti alkatrészről" -#: templates/js/translated/part.js:284 +#: templates/js/translated/part.js:287 msgid "Copy Parameters" msgstr "Paraméterek másolása" -#: templates/js/translated/part.js:285 +#: templates/js/translated/part.js:288 msgid "Copy parameter data from original part" msgstr "Paraméterek másolása az eredeti alkatrészről" -#: templates/js/translated/part.js:298 +#: templates/js/translated/part.js:301 msgid "Parent part category" msgstr "Felsőbb szintű alkatrész kategória" -#: templates/js/translated/part.js:313 templates/js/translated/stock.js:122 +#: templates/js/translated/part.js:316 templates/js/translated/stock.js:121 msgid "Icon (optional) - Explore all available icons on" msgstr "Ikon (opcionális) - Az összes ikon felfedezése itt" -#: templates/js/translated/part.js:329 +#: templates/js/translated/part.js:332 msgid "Edit Part Category" msgstr "Alkatrész kategória szerkesztése" -#: templates/js/translated/part.js:342 +#: templates/js/translated/part.js:345 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:347 +#: templates/js/translated/part.js:350 msgid "Move to parent category" msgstr "Áthelyezés fentebbi kategóriába" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:359 msgid "Delete Part Category" msgstr "Alkatrész kategória törlése" -#: templates/js/translated/part.js:360 +#: templates/js/translated/part.js:363 msgid "Action for parts in this category" msgstr "A kategóriában lévő alkatrészek kezelése" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:368 msgid "Action for child categories" msgstr "Alkategóriák kezelése" -#: templates/js/translated/part.js:394 +#: templates/js/translated/part.js:397 msgid "Edit Part" msgstr "Alkatrész szerkesztése" -#: templates/js/translated/part.js:396 +#: templates/js/translated/part.js:399 msgid "Part edited" msgstr "Alkatrész módosítva" -#: templates/js/translated/part.js:407 +#: templates/js/translated/part.js:410 msgid "Create Part Variant" msgstr "Alkatrész változat létrehozása" -#: templates/js/translated/part.js:459 +#: templates/js/translated/part.js:462 msgid "Active Part" msgstr "Aktív alkatrész" -#: templates/js/translated/part.js:460 +#: templates/js/translated/part.js:463 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:474 +#: templates/js/translated/part.js:477 msgid "Deleting this part cannot be reversed" msgstr "Ezen alkatrész törlése nem vonható vissza" -#: templates/js/translated/part.js:476 +#: templates/js/translated/part.js:479 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:477 +#: templates/js/translated/part.js:480 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:478 +#: templates/js/translated/part.js:481 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:485 +#: templates/js/translated/part.js:488 msgid "Delete Part" msgstr "Alkatrész törlése" -#: templates/js/translated/part.js:521 +#: templates/js/translated/part.js:524 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:523 +#: templates/js/translated/part.js:526 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:528 +#: templates/js/translated/part.js:531 msgid "Subscribe to notifications for this item" msgstr "Értesítések kérése erre a tételre" -#: templates/js/translated/part.js:530 +#: templates/js/translated/part.js:533 msgid "You have unsubscribed to notifications for this item" msgstr "Értesítések letiltva erre a tételre" -#: templates/js/translated/part.js:547 +#: templates/js/translated/part.js:550 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:557 +#: templates/js/translated/part.js:560 msgid "Validate Bill of Materials" msgstr "Alkatrészjegyzék jóváhagyása" -#: templates/js/translated/part.js:560 +#: templates/js/translated/part.js:563 msgid "Validated Bill of Materials" msgstr "Alkatrészjegyzék jóvá lett hagyva" -#: templates/js/translated/part.js:585 +#: templates/js/translated/part.js:588 msgid "Copy Bill of Materials" msgstr "Alkatrészjegyzék másolása" -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1554 +#: templates/js/translated/part.js:612 templates/js/translated/part.js:1825 #: templates/js/translated/table_filters.js:488 msgid "Low stock" msgstr "Alacsony készlet" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:622 msgid "No stock available" msgstr "Nincs szabad" -#: templates/js/translated/part.js:653 templates/js/translated/part.js:739 +#: templates/js/translated/part.js:656 templates/js/translated/part.js:1010 msgid "Trackable part" msgstr "Követésre kötelezett alkatrész" -#: templates/js/translated/part.js:657 templates/js/translated/part.js:743 +#: templates/js/translated/part.js:660 templates/js/translated/part.js:1014 msgid "Virtual part" msgstr "Virtuális alkatrész" -#: templates/js/translated/part.js:669 +#: templates/js/translated/part.js:672 msgid "Subscribed part" msgstr "Értesítésre beállított alkatrész" -#: templates/js/translated/part.js:673 +#: templates/js/translated/part.js:676 msgid "Salable part" msgstr "Értékesíthető alkatrész" -#: templates/js/translated/part.js:815 +#: templates/js/translated/part.js:761 +msgid "Stock item has not been checked recently" +msgstr "A készlet tétel mostanában nem volt ellenőrizve" + +#: templates/js/translated/part.js:769 +msgid "Update item" +msgstr "Tétel frissítése" + +#: templates/js/translated/part.js:770 +msgid "Delete item" +msgstr "Tétel törlése" + +#: templates/js/translated/part.js:871 +msgid "No stocktake information available" +msgstr "Nincs elérhető leltár előzmény" + +#: templates/js/translated/part.js:910 templates/js/translated/part.js:933 +msgid "Edit Stocktake Entry" +msgstr "Leltár bejegyzés szerkesztése" + +#: templates/js/translated/part.js:914 templates/js/translated/part.js:945 +msgid "Delete Stocktake Entry" +msgstr "Leltár bejegyzés törlése" + +#: templates/js/translated/part.js:1086 msgid "No variants found" msgstr "Nincs több változat" -#: templates/js/translated/part.js:1236 +#: templates/js/translated/part.js:1507 msgid "Delete part relationship" msgstr "Alkatrész kapcsolatok törlése" -#: templates/js/translated/part.js:1260 +#: templates/js/translated/part.js:1531 msgid "Delete Part Relationship" msgstr "Alkatrész kapcsolatok törlése" -#: templates/js/translated/part.js:1327 templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1598 templates/js/translated/part.js:1936 msgid "No parts found" msgstr "Nincs alkatrész" -#: templates/js/translated/part.js:1521 +#: templates/js/translated/part.js:1792 msgid "No category" msgstr "Nincs kategória" -#: templates/js/translated/part.js:1552 +#: templates/js/translated/part.js:1823 msgid "No stock" msgstr "Nincs készlet" -#: templates/js/translated/part.js:1576 +#: templates/js/translated/part.js:1847 msgid "Allocated to build orders" msgstr "Gyártáshoz lefoglalva" -#: templates/js/translated/part.js:1580 +#: templates/js/translated/part.js:1851 msgid "Allocated to sales orders" msgstr "Vevő rendeléshez lefoglalva" -#: templates/js/translated/part.js:1679 templates/js/translated/part.js:1922 -#: templates/js/translated/stock.js:2387 +#: templates/js/translated/part.js:1960 templates/js/translated/part.js:2203 +#: templates/js/translated/stock.js:2382 msgid "Display as list" msgstr "Megjelenítés listaként" -#: templates/js/translated/part.js:1695 +#: templates/js/translated/part.js:1976 msgid "Display as grid" msgstr "Megjelenítés rácsnézetként" -#: templates/js/translated/part.js:1761 +#: templates/js/translated/part.js:2042 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:1766 +#: templates/js/translated/part.js:2047 msgid "Set Part Category" msgstr "Alkatrész kategória beállítása" -#: templates/js/translated/part.js:1771 +#: templates/js/translated/part.js:2052 msgid "Select Part Category" msgstr "Alkatrész kategória kiválasztása" -#: templates/js/translated/part.js:1784 +#: templates/js/translated/part.js:2065 msgid "Category is required" msgstr "Kategória megadása kötelező" -#: templates/js/translated/part.js:1942 templates/js/translated/stock.js:2407 +#: templates/js/translated/part.js:2223 templates/js/translated/stock.js:2402 msgid "Display as tree" msgstr "Megjelenítés fában" -#: templates/js/translated/part.js:2022 +#: templates/js/translated/part.js:2303 msgid "Load Subcategories" msgstr "Alkategóriák betöltése" -#: templates/js/translated/part.js:2038 +#: templates/js/translated/part.js:2319 msgid "Subscribed category" msgstr "Értesítésre beállított kategória" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2383 msgid "No test templates matching query" msgstr "Nincs a lekérdezéssel egyező teszt sablon" -#: templates/js/translated/part.js:2153 templates/js/translated/stock.js:1338 +#: templates/js/translated/part.js:2434 templates/js/translated/stock.js:1337 msgid "Edit test result" msgstr "Teszt eredmény szerkesztése" -#: templates/js/translated/part.js:2154 templates/js/translated/stock.js:1339 -#: templates/js/translated/stock.js:1599 +#: templates/js/translated/part.js:2435 templates/js/translated/stock.js:1338 +#: templates/js/translated/stock.js:1598 msgid "Delete test result" msgstr "Teszt eredmény törlése" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2441 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:2182 +#: templates/js/translated/part.js:2463 msgid "Edit Test Result Template" msgstr "Teszt eredmény sablon szerkesztése" -#: templates/js/translated/part.js:2196 +#: templates/js/translated/part.js:2477 msgid "Delete Test Result Template" msgstr "Teszt eredmény sablon törlése" -#: templates/js/translated/part.js:2277 templates/js/translated/part.js:2278 +#: templates/js/translated/part.js:2558 templates/js/translated/part.js:2559 msgid "No date specified" msgstr "Nincs megadva dátum" -#: templates/js/translated/part.js:2280 +#: templates/js/translated/part.js:2561 msgid "Specified date is in the past" msgstr "A megadott dátum a múltban van" -#: templates/js/translated/part.js:2286 +#: templates/js/translated/part.js:2567 msgid "Speculative" msgstr "Spekulatív" -#: templates/js/translated/part.js:2336 +#: templates/js/translated/part.js:2617 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:2342 +#: templates/js/translated/part.js:2623 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:2438 +#: templates/js/translated/part.js:2719 msgid "Scheduled Stock Quantities" msgstr "Ütemezett készlet mennyiség" -#: templates/js/translated/part.js:2454 +#: templates/js/translated/part.js:2735 msgid "Maximum Quantity" msgstr "Minimum mennyiség" -#: templates/js/translated/part.js:2499 +#: templates/js/translated/part.js:2780 msgid "Minimum Stock Level" msgstr "Minimális készlet" @@ -10291,388 +10432,388 @@ msgstr "Eredmények összezárása" msgid "Remove results" msgstr "Eredmények eltávolítása" -#: templates/js/translated/stock.js:74 +#: templates/js/translated/stock.js:73 msgid "Serialize Stock Item" msgstr "Készlet tétel sorszámozása" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:104 msgid "Confirm Stock Serialization" msgstr "Készlet sorozatszámozás megerősítése" -#: templates/js/translated/stock.js:114 +#: templates/js/translated/stock.js:113 msgid "Parent stock location" msgstr "Felsőbb szintű készlet hely" -#: templates/js/translated/stock.js:148 +#: templates/js/translated/stock.js:147 msgid "Edit Stock Location" msgstr "Készlet hely szerkesztése" -#: templates/js/translated/stock.js:163 +#: templates/js/translated/stock.js:162 msgid "New Stock Location" msgstr "Új készlet hely" -#: templates/js/translated/stock.js:177 +#: templates/js/translated/stock.js:176 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:184 +#: templates/js/translated/stock.js:183 msgid "Move to parent stock location" msgstr "Szülő készlet helyre mozgatás" -#: templates/js/translated/stock.js:193 +#: templates/js/translated/stock.js:192 msgid "Delete Stock Location" msgstr "Készlethely törlése" -#: templates/js/translated/stock.js:197 +#: templates/js/translated/stock.js:196 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:202 +#: templates/js/translated/stock.js:201 msgid "Action for sub-locations" msgstr "Műveletek az al-helyekhez" -#: templates/js/translated/stock.js:256 +#: templates/js/translated/stock.js:255 msgid "This part cannot be serialized" msgstr "Ezt az alkatrészt nem lehet sorozatszámozni" -#: templates/js/translated/stock.js:298 +#: templates/js/translated/stock.js:297 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:304 +#: templates/js/translated/stock.js:303 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:369 +#: templates/js/translated/stock.js:368 msgid "Stock item duplicated" msgstr "Készlet tétel lemásolva" -#: templates/js/translated/stock.js:389 +#: templates/js/translated/stock.js:388 msgid "Duplicate Stock Item" msgstr "Készlet tétel másolása" -#: templates/js/translated/stock.js:405 +#: templates/js/translated/stock.js:404 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:410 +#: templates/js/translated/stock.js:409 msgid "Delete Stock Item" msgstr "Készlet tétel törlése" -#: templates/js/translated/stock.js:431 +#: templates/js/translated/stock.js:430 msgid "Edit Stock Item" msgstr "Készlet tétel szerkesztése" -#: templates/js/translated/stock.js:481 +#: templates/js/translated/stock.js:480 msgid "Created new stock item" msgstr "Készlet tétel létrehozva" -#: templates/js/translated/stock.js:494 +#: templates/js/translated/stock.js:493 msgid "Created multiple stock items" msgstr "Több készlet tétel létre lett hozva" -#: templates/js/translated/stock.js:519 +#: templates/js/translated/stock.js:518 msgid "Find Serial Number" msgstr "Sorozatszám keresése" -#: templates/js/translated/stock.js:523 templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:522 templates/js/translated/stock.js:523 msgid "Enter serial number" msgstr "Sorozatszám megadása" -#: templates/js/translated/stock.js:540 +#: templates/js/translated/stock.js:539 msgid "Enter a serial number" msgstr "Adj meg egy sorozatszámot" -#: templates/js/translated/stock.js:560 +#: templates/js/translated/stock.js:559 msgid "No matching serial number" msgstr "Nincs egyező sorozatszám" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:568 msgid "More than one matching result found" msgstr "Több egyező eredmény is van" -#: templates/js/translated/stock.js:692 +#: templates/js/translated/stock.js:691 msgid "Confirm stock assignment" msgstr "Készlet hozzárendelés jóváhagyása" -#: templates/js/translated/stock.js:693 +#: templates/js/translated/stock.js:692 msgid "Assign Stock to Customer" msgstr "Készlet vevőhöz rendelése" -#: templates/js/translated/stock.js:770 +#: templates/js/translated/stock.js:769 msgid "Warning: Merge operation cannot be reversed" msgstr "Figyelem: az összevonási művelet nem vonható vissza" -#: templates/js/translated/stock.js:771 +#: templates/js/translated/stock.js:770 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:773 +#: templates/js/translated/stock.js:772 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:774 +#: templates/js/translated/stock.js:773 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:863 +#: templates/js/translated/stock.js:862 msgid "Confirm stock item merge" msgstr "Készlet összevonás megerősítése" -#: templates/js/translated/stock.js:864 +#: templates/js/translated/stock.js:863 msgid "Merge Stock Items" msgstr "Készlet tételek összevonása" -#: templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:958 msgid "Transfer Stock" msgstr "Készlet áthelyezése" -#: templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:959 msgid "Move" msgstr "Áthelyezés" -#: templates/js/translated/stock.js:966 +#: templates/js/translated/stock.js:965 msgid "Count Stock" msgstr "Leltározás" -#: templates/js/translated/stock.js:967 +#: templates/js/translated/stock.js:966 msgid "Count" msgstr "Mennyiség" -#: templates/js/translated/stock.js:971 +#: templates/js/translated/stock.js:970 msgid "Remove Stock" msgstr "Készlet csökkentése" -#: templates/js/translated/stock.js:972 +#: templates/js/translated/stock.js:971 msgid "Take" msgstr "Kivesz" -#: templates/js/translated/stock.js:976 +#: templates/js/translated/stock.js:975 msgid "Add Stock" msgstr "Készlet növelése" -#: templates/js/translated/stock.js:977 users/models.py:220 +#: templates/js/translated/stock.js:976 users/models.py:221 msgid "Add" msgstr "Hozzáad" -#: templates/js/translated/stock.js:981 +#: templates/js/translated/stock.js:980 msgid "Delete Stock" msgstr "Készlet törlése" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 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:1074 +#: templates/js/translated/stock.js:1073 msgid "Specify stock quantity" msgstr "Készlet mennyiség megadása" -#: templates/js/translated/stock.js:1114 +#: templates/js/translated/stock.js:1113 msgid "You must select at least one available stock item" msgstr "Ki kell választanod legalább egy rendelkezésre álló készlet tételt" -#: templates/js/translated/stock.js:1141 +#: templates/js/translated/stock.js:1140 msgid "Confirm stock adjustment" msgstr "Készlet módosítás jóváhagyása" -#: templates/js/translated/stock.js:1277 +#: templates/js/translated/stock.js:1276 msgid "PASS" msgstr "SIKER" -#: templates/js/translated/stock.js:1279 +#: templates/js/translated/stock.js:1278 msgid "FAIL" msgstr "SIKERTELEN" -#: templates/js/translated/stock.js:1284 +#: templates/js/translated/stock.js:1283 msgid "NO RESULT" msgstr "NINCS EREDMÉNY" -#: templates/js/translated/stock.js:1331 +#: templates/js/translated/stock.js:1330 msgid "Pass test" msgstr "Teszt sikeres" -#: templates/js/translated/stock.js:1334 +#: templates/js/translated/stock.js:1333 msgid "Add test result" msgstr "Teszt eredmény hozzáadása" -#: templates/js/translated/stock.js:1360 +#: templates/js/translated/stock.js:1359 msgid "No test results found" msgstr "Nincs teszt eredmény" -#: templates/js/translated/stock.js:1417 +#: templates/js/translated/stock.js:1416 msgid "Test Date" msgstr "Teszt dátuma" -#: templates/js/translated/stock.js:1582 +#: templates/js/translated/stock.js:1581 msgid "Edit Test Result" msgstr "Teszt eredmény szerkesztése" -#: templates/js/translated/stock.js:1604 +#: templates/js/translated/stock.js:1603 msgid "Delete Test Result" msgstr "Teszt eredmény törlése" -#: templates/js/translated/stock.js:1633 +#: templates/js/translated/stock.js:1632 msgid "In production" msgstr "Gyártásban" -#: templates/js/translated/stock.js:1637 +#: templates/js/translated/stock.js:1636 msgid "Installed in Stock Item" msgstr "Beépítve készlet tételbe" -#: templates/js/translated/stock.js:1645 +#: templates/js/translated/stock.js:1644 msgid "Assigned to Sales Order" msgstr "Vevő rendeléshez hozzárendelve" -#: templates/js/translated/stock.js:1651 +#: templates/js/translated/stock.js:1650 msgid "No stock location set" msgstr "Nincs hely megadva" -#: templates/js/translated/stock.js:1820 +#: templates/js/translated/stock.js:1815 msgid "Stock item is in production" msgstr "Készlet tétel gyártás alatt" -#: templates/js/translated/stock.js:1825 +#: templates/js/translated/stock.js:1820 msgid "Stock item assigned to sales order" msgstr "Készlet tétel hozzárendelve egy vevői rendeléshez" -#: templates/js/translated/stock.js:1828 +#: templates/js/translated/stock.js:1823 msgid "Stock item assigned to customer" msgstr "Készlet tétel hozzárendelve egy vevőhöz" -#: templates/js/translated/stock.js:1831 +#: templates/js/translated/stock.js:1826 msgid "Serialized stock item has been allocated" msgstr "Egyedi követésre kötelezett készlet tétel lefoglalva" -#: templates/js/translated/stock.js:1833 +#: templates/js/translated/stock.js:1828 msgid "Stock item has been fully allocated" msgstr "Készlet tétel teljes egészében lefoglalva" -#: templates/js/translated/stock.js:1835 +#: templates/js/translated/stock.js:1830 msgid "Stock item has been partially allocated" msgstr "Készlet tétel részben lefoglalva" -#: templates/js/translated/stock.js:1838 +#: templates/js/translated/stock.js:1833 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:1842 +#: templates/js/translated/stock.js:1837 msgid "Stock item has expired" msgstr "Készlet tétel lejárt" -#: templates/js/translated/stock.js:1844 +#: templates/js/translated/stock.js:1839 msgid "Stock item will expire soon" msgstr "Készlet tétel hamarosan lejár" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1846 msgid "Stock item has been rejected" msgstr "Készlet tétel elutasítva" -#: templates/js/translated/stock.js:1853 +#: templates/js/translated/stock.js:1848 msgid "Stock item is lost" msgstr "Készlet tétel elveszett" -#: templates/js/translated/stock.js:1855 +#: templates/js/translated/stock.js:1850 msgid "Stock item is destroyed" msgstr "Készlet tétel megsemmisült" -#: templates/js/translated/stock.js:1859 +#: templates/js/translated/stock.js:1854 #: templates/js/translated/table_filters.js:216 msgid "Depleted" msgstr "Kimerült" -#: templates/js/translated/stock.js:1989 +#: templates/js/translated/stock.js:1984 msgid "Supplier part not specified" msgstr "Beszállítói alkatrész nincs megadva" -#: templates/js/translated/stock.js:2026 +#: templates/js/translated/stock.js:2021 msgid "No stock items matching query" msgstr "Nincs a lekérdezésnek megfelelő készlet tétel" -#: templates/js/translated/stock.js:2199 +#: templates/js/translated/stock.js:2194 msgid "Set Stock Status" msgstr "Készlet állapot beállítása" -#: templates/js/translated/stock.js:2213 +#: templates/js/translated/stock.js:2208 msgid "Select Status Code" msgstr "Státuszkód kiválasztása" -#: templates/js/translated/stock.js:2214 +#: templates/js/translated/stock.js:2209 msgid "Status code must be selected" msgstr "Státuszkódot ki kell választani" -#: templates/js/translated/stock.js:2446 +#: templates/js/translated/stock.js:2441 msgid "Load Subloactions" msgstr "Alhelyek betöltése" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2536 msgid "Details" msgstr "Részletek" -#: templates/js/translated/stock.js:2557 +#: templates/js/translated/stock.js:2552 msgid "Part information unavailable" msgstr "Alkatrész információ nem áll rendelkezésre" -#: templates/js/translated/stock.js:2579 +#: templates/js/translated/stock.js:2574 msgid "Location no longer exists" msgstr "A hely már nem létezik" -#: templates/js/translated/stock.js:2598 +#: templates/js/translated/stock.js:2593 msgid "Purchase order no longer exists" msgstr "Beszerzési megrendelés már nem létezik" -#: templates/js/translated/stock.js:2617 +#: templates/js/translated/stock.js:2612 msgid "Customer no longer exists" msgstr "Vevő már nem létezik" -#: templates/js/translated/stock.js:2635 +#: templates/js/translated/stock.js:2630 msgid "Stock item no longer exists" msgstr "A készlet tétel már nem létezik" -#: templates/js/translated/stock.js:2658 +#: templates/js/translated/stock.js:2653 msgid "Added" msgstr "Hozzáadva" -#: templates/js/translated/stock.js:2666 +#: templates/js/translated/stock.js:2661 msgid "Removed" msgstr "Eltávolítva" -#: templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2737 msgid "No installed items" msgstr "Nincsenek beépített tételek" -#: templates/js/translated/stock.js:2793 templates/js/translated/stock.js:2829 +#: templates/js/translated/stock.js:2788 templates/js/translated/stock.js:2824 msgid "Uninstall Stock Item" msgstr "Készlet tétel kiszedése" -#: templates/js/translated/stock.js:2845 +#: templates/js/translated/stock.js:2840 msgid "Select stock item to uninstall" msgstr "Válaszd ki a kiszedni való készlet tételt" -#: templates/js/translated/stock.js:2866 +#: templates/js/translated/stock.js:2861 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:2867 +#: templates/js/translated/stock.js:2862 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:2869 +#: templates/js/translated/stock.js:2864 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:2870 +#: templates/js/translated/stock.js:2865 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:2871 +#: templates/js/translated/stock.js:2866 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:2872 +#: templates/js/translated/stock.js:2867 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:2885 +#: templates/js/translated/stock.js:2880 msgid "Select part to install" msgstr "Válaszd ki a beépítendő alkatrészt" @@ -10697,7 +10838,7 @@ msgid "Allow Variant Stock" msgstr "Készlet változatok engedélyezése" #: templates/js/translated/table_filters.js:92 -#: templates/js/translated/table_filters.js:516 +#: templates/js/translated/table_filters.js:520 msgid "Has Pricing" msgstr "Van árazás" @@ -10913,6 +11054,10 @@ msgstr "Készleten" msgid "Purchasable" msgstr "Beszerezhető" +#: templates/js/translated/table_filters.js:504 +msgid "Has stocktake entries" +msgstr "Volt leltár" + #: templates/js/translated/tables.js:70 msgid "Display calendar view" msgstr "Naptár nézet megjelenítése" @@ -11207,35 +11352,35 @@ msgstr "Jogosultságok" msgid "Important dates" msgstr "Fontos dátumok" -#: users/models.py:207 +#: users/models.py:208 msgid "Permission set" msgstr "Jogosultságok" -#: users/models.py:215 +#: users/models.py:216 msgid "Group" msgstr "Csoport" -#: users/models.py:218 +#: users/models.py:219 msgid "View" msgstr "Nézet" -#: users/models.py:218 +#: users/models.py:219 msgid "Permission to view items" msgstr "Jogosultság tételek megtekintéséhez" -#: users/models.py:220 +#: users/models.py:221 msgid "Permission to add items" msgstr "Jogosultság tételek hozzáadásához" -#: users/models.py:222 +#: users/models.py:223 msgid "Change" msgstr "Módosítás" -#: users/models.py:222 +#: users/models.py:223 msgid "Permissions to edit items" msgstr "Jogosultság tételek szerkesztéséhez" -#: users/models.py:224 +#: users/models.py:225 msgid "Permission to delete items" msgstr "Jogosultság tételek törléséhez" diff --git a/InvenTree/locale/id/LC_MESSAGES/django.po b/InvenTree/locale/id/LC_MESSAGES/django.po index 590d9b9f7d..99cc171228 100644 --- a/InvenTree/locale/id/LC_MESSAGES/django.po +++ b/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: 2022-12-30 20:46+0000\n" -"PO-Revision-Date: 2022-12-31 11:30\n" +"POT-Creation-Date: 2023-01-01 11:05+0000\n" +"PO-Revision-Date: 2023-01-01 11:26\n" "Last-Translator: \n" "Language-Team: Indonesian\n" "Language: id_ID\n" @@ -34,7 +34,7 @@ msgstr "Masukkan tanggal" #: company/templates/company/sidebar.html:25 order/models.py:943 #: order/templates/order/po_sidebar.html:11 #: order/templates/order/so_sidebar.html:17 part/admin.py:27 -#: part/templates/part/part_sidebar.html:57 +#: part/models.py:2932 part/templates/part/part_sidebar.html:62 #: report/templates/report/inventree_build_order_base.html:172 #: stock/admin.py:103 stock/models.py:2061 stock/models.py:2169 #: stock/serializers.py:321 stock/serializers.py:454 stock/serializers.py:535 @@ -44,8 +44,8 @@ msgstr "Masukkan tanggal" #: templates/js/translated/company.js:1023 #: templates/js/translated/order.js:2435 templates/js/translated/order.js:2569 #: templates/js/translated/order.js:3067 templates/js/translated/order.js:4004 -#: templates/js/translated/order.js:4385 templates/js/translated/stock.js:1413 -#: templates/js/translated/stock.js:2020 +#: templates/js/translated/order.js:4385 templates/js/translated/part.js:882 +#: templates/js/translated/stock.js:1412 templates/js/translated/stock.js:2015 msgid "Notes" msgstr "Catatan" @@ -204,18 +204,18 @@ msgstr "Lampiran" msgid "Select file to attach" msgstr "Pilih file untuk dilampirkan" -#: InvenTree/models.py:412 common/models.py:2366 company/models.py:129 +#: InvenTree/models.py:412 common/models.py:2373 company/models.py:129 #: company/models.py:281 company/models.py:516 order/models.py:85 -#: order/models.py:1282 part/admin.py:25 part/models.py:865 +#: order/models.py:1282 part/admin.py:25 part/models.py:866 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: stock/admin.py:102 templates/js/translated/company.js:692 #: templates/js/translated/company.js:1012 -#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1615 +#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1886 msgid "Link" msgstr "Tautan" -#: InvenTree/models.py:413 build/models.py:290 part/models.py:866 +#: InvenTree/models.py:413 build/models.py:290 part/models.py:867 #: stock/models.py:716 msgid "Link to external URL" msgstr "Tautan menuju URL eksternal" @@ -229,12 +229,13 @@ msgstr "Komentar" msgid "File comment" msgstr "Komentar file" -#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1810 -#: common/models.py:1811 common/models.py:2034 common/models.py:2035 -#: common/models.py:2296 common/models.py:2297 part/models.py:2948 -#: part/models.py:2968 plugin/models.py:264 plugin/models.py:265 +#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1817 +#: common/models.py:1818 common/models.py:2041 common/models.py:2042 +#: common/models.py:2303 common/models.py:2304 part/models.py:2940 +#: part/models.py:3026 part/models.py:3046 plugin/models.py:264 +#: plugin/models.py:265 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2689 +#: templates/js/translated/stock.js:2684 msgid "User" msgstr "Pengguna" @@ -271,19 +272,20 @@ msgstr "Kesalahan merubah nama file" msgid "Invalid choice" msgstr "Pilihan tidak valid" -#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2020 -#: company/models.py:363 label/models.py:101 part/models.py:809 -#: part/models.py:3123 plugin/models.py:94 report/models.py:152 +#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2027 +#: company/models.py:363 label/models.py:101 part/models.py:810 +#: part/models.py:3201 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 +#: templates/InvenTree/settings/notifications.html:17 #: templates/InvenTree/settings/plugin.html:60 #: templates/InvenTree/settings/plugin.html:104 #: templates/InvenTree/settings/plugin_settings.html:23 -#: templates/InvenTree/settings/settings.html:344 +#: templates/InvenTree/settings/settings.html:345 #: templates/js/translated/company.js:581 #: templates/js/translated/company.js:794 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:711 templates/js/translated/part.js:880 -#: templates/js/translated/part.js:2010 templates/js/translated/stock.js:2434 +#: templates/js/translated/part.js:982 templates/js/translated/part.js:1151 +#: templates/js/translated/part.js:2291 templates/js/translated/stock.js:2429 msgid "Name" msgstr "Nama" @@ -292,24 +294,25 @@ msgstr "Nama" #: company/models.py:522 company/templates/company/company_base.html:72 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:108 label/models.py:108 -#: order/models.py:83 part/admin.py:141 part/admin.py:222 part/models.py:832 -#: part/models.py:3132 part/templates/part/category.html:75 +#: order/models.py:83 part/admin.py:174 part/admin.py:255 part/models.py:833 +#: part/models.py:3210 part/templates/part/category.html:75 #: part/templates/part/part_base.html:172 #: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/admin.py:25 stock/templates/stock/location.html:117 +#: templates/InvenTree/settings/notifications.html:19 #: templates/InvenTree/settings/plugin_settings.html:28 -#: templates/InvenTree/settings/settings.html:355 +#: templates/InvenTree/settings/settings.html:356 #: templates/js/translated/bom.js:592 templates/js/translated/bom.js:895 #: templates/js/translated/build.js:2596 templates/js/translated/company.js:445 #: templates/js/translated/company.js:703 #: templates/js/translated/company.js:987 templates/js/translated/order.js:2030 #: templates/js/translated/order.js:2267 templates/js/translated/order.js:2845 -#: templates/js/translated/part.js:773 templates/js/translated/part.js:1223 -#: templates/js/translated/part.js:1497 templates/js/translated/part.js:2046 -#: templates/js/translated/part.js:2121 templates/js/translated/stock.js:1787 -#: templates/js/translated/stock.js:2466 templates/js/translated/stock.js:2526 +#: templates/js/translated/part.js:1044 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1768 templates/js/translated/part.js:2327 +#: templates/js/translated/part.js:2402 templates/js/translated/stock.js:1782 +#: templates/js/translated/stock.js:2461 templates/js/translated/stock.js:2521 msgid "Description" msgstr "Keterangan" @@ -322,7 +325,7 @@ msgid "parent" msgstr "induk" #: InvenTree/models.py:580 InvenTree/models.py:581 -#: templates/js/translated/part.js:2055 templates/js/translated/stock.js:2475 +#: templates/js/translated/part.js:2336 templates/js/translated/stock.js:2470 msgid "Path" msgstr "Direktori" @@ -354,7 +357,7 @@ msgstr "Terjadi Kesalahan Server" msgid "An error has been logged by the server." msgstr "Sebuah kesalahan telah dicatat oleh server." -#: InvenTree/serializers.py:58 part/models.py:3468 +#: InvenTree/serializers.py:58 part/models.py:3546 msgid "Must be a valid number" msgstr "Harus berupa angka yang valid" @@ -421,107 +424,107 @@ msgstr "URL file gambar external" msgid "Downloading images from remote URL is not enabled" msgstr "Unduhan gambar dari URL external tidak aktif" -#: InvenTree/settings.py:639 +#: InvenTree/settings.py:642 msgid "Czech" msgstr "Ceko" -#: InvenTree/settings.py:640 +#: InvenTree/settings.py:643 msgid "Danish" msgstr "Denmark" -#: InvenTree/settings.py:641 +#: InvenTree/settings.py:644 msgid "German" msgstr "Jerman" -#: InvenTree/settings.py:642 +#: InvenTree/settings.py:645 msgid "Greek" msgstr "Yunani" -#: InvenTree/settings.py:643 +#: InvenTree/settings.py:646 msgid "English" msgstr "Inggris" -#: InvenTree/settings.py:644 +#: InvenTree/settings.py:647 msgid "Spanish" msgstr "Spanyol" -#: InvenTree/settings.py:645 +#: InvenTree/settings.py:648 msgid "Spanish (Mexican)" msgstr "Spanyol (Meksiko)" -#: InvenTree/settings.py:646 +#: InvenTree/settings.py:649 msgid "Farsi / Persian" msgstr "Farsi / Persia" -#: InvenTree/settings.py:647 +#: InvenTree/settings.py:650 msgid "French" msgstr "Perancis" -#: InvenTree/settings.py:648 +#: InvenTree/settings.py:651 msgid "Hebrew" msgstr "Ibrani" -#: InvenTree/settings.py:649 +#: InvenTree/settings.py:652 msgid "Hungarian" msgstr "Hungaria" -#: InvenTree/settings.py:650 +#: InvenTree/settings.py:653 msgid "Italian" msgstr "Itali" -#: InvenTree/settings.py:651 +#: InvenTree/settings.py:654 msgid "Japanese" msgstr "Jepang" -#: InvenTree/settings.py:652 +#: InvenTree/settings.py:655 msgid "Korean" msgstr "Korea" -#: InvenTree/settings.py:653 +#: InvenTree/settings.py:656 msgid "Dutch" msgstr "Belanda" -#: InvenTree/settings.py:654 +#: InvenTree/settings.py:657 msgid "Norwegian" msgstr "Norwegia" -#: InvenTree/settings.py:655 +#: InvenTree/settings.py:658 msgid "Polish" msgstr "Polandia" -#: InvenTree/settings.py:656 +#: InvenTree/settings.py:659 msgid "Portuguese" msgstr "Portugis" -#: InvenTree/settings.py:657 +#: InvenTree/settings.py:660 msgid "Portuguese (Brazilian)" msgstr "Portugis (Brasil)" -#: InvenTree/settings.py:658 +#: InvenTree/settings.py:661 msgid "Russian" msgstr "Rusia" -#: InvenTree/settings.py:659 +#: InvenTree/settings.py:662 msgid "Slovenian" msgstr "" -#: InvenTree/settings.py:660 +#: InvenTree/settings.py:663 msgid "Swedish" msgstr "Swedia" -#: InvenTree/settings.py:661 +#: InvenTree/settings.py:664 msgid "Thai" msgstr "Thai" -#: InvenTree/settings.py:662 +#: InvenTree/settings.py:665 msgid "Turkish" msgstr "Turki" -#: InvenTree/settings.py:663 +#: InvenTree/settings.py:666 msgid "Vietnamese" msgstr "Vietnam" -#: InvenTree/settings.py:664 +#: InvenTree/settings.py:667 msgid "Chinese" msgstr "Cina" @@ -652,7 +655,7 @@ msgstr "Dipisah dari item induk" msgid "Split child item" msgstr "Pisah item dari barang induk" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2124 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2119 msgid "Merged stock items" msgstr "Stok item digabungkan" @@ -756,7 +759,7 @@ msgstr "Order Produksi" #: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:141 -#: templates/InvenTree/settings/sidebar.html:47 +#: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:254 users/models.py:41 msgid "Build Orders" msgstr "Order Produksi" @@ -766,8 +769,9 @@ msgid "Build Order Reference" msgstr "Referensi Order Produksi" #: build/models.py:155 order/models.py:241 order/models.py:651 -#: order/models.py:941 part/admin.py:224 part/models.py:3378 +#: order/models.py:941 part/admin.py:257 part/models.py:3456 #: part/templates/part/upload_bom.html:54 +#: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 #: templates/js/translated/bom.js:729 templates/js/translated/bom.js:905 @@ -793,13 +797,15 @@ msgstr "Produksi induk dari produksi ini" #: build/models.py:180 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:684 #: order/models.py:1038 order/models.py:1149 order/models.py:1150 -#: part/models.py:381 part/models.py:2781 part/models.py:2894 -#: part/models.py:2909 part/models.py:2928 part/models.py:2946 -#: part/models.py:3045 part/models.py:3166 part/models.py:3258 -#: part/models.py:3343 part/models.py:3659 part/serializers.py:853 -#: part/templates/part/part_app_base.html:8 +#: part/models.py:382 part/models.py:2799 part/models.py:2912 +#: part/models.py:2972 part/models.py:2987 part/models.py:3006 +#: part/models.py:3024 part/models.py:3123 part/models.py:3244 +#: part/models.py:3336 part/models.py:3421 part/models.py:3737 +#: part/serializers.py:894 part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 +#: report/templates/report/inventree_bill_of_materials_report.html:110 +#: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_base.html:109 #: report/templates/report/inventree_po_report.html:89 #: report/templates/report/inventree_so_report.html:90 stock/serializers.py:90 @@ -819,12 +825,12 @@ msgstr "Produksi induk dari produksi ini" #: templates/js/translated/order.js:1172 templates/js/translated/order.js:1676 #: templates/js/translated/order.js:2252 templates/js/translated/order.js:3199 #: templates/js/translated/order.js:3595 templates/js/translated/order.js:3825 -#: templates/js/translated/part.js:1208 templates/js/translated/part.js:1280 -#: templates/js/translated/part.js:1474 templates/js/translated/pricing.js:102 -#: templates/js/translated/stock.js:618 templates/js/translated/stock.js:783 -#: templates/js/translated/stock.js:993 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2552 templates/js/translated/stock.js:2747 -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/part.js:1479 templates/js/translated/part.js:1551 +#: templates/js/translated/part.js:1745 templates/js/translated/pricing.js:102 +#: templates/js/translated/stock.js:617 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:992 templates/js/translated/stock.js:1738 +#: templates/js/translated/stock.js:2547 templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2879 msgid "Part" msgstr "Bagian" @@ -890,7 +896,7 @@ msgstr "Kode Kelompok" msgid "Batch code for this build output" msgstr "Kode kelompok untuk hasil produksi ini" -#: build/models.py:252 order/models.py:87 part/models.py:1001 +#: build/models.py:252 order/models.py:87 part/models.py:1002 #: part/templates/part/part_base.html:318 templates/js/translated/order.js:2858 msgid "Creation Date" msgstr "Tanggal Pembuatan" @@ -923,7 +929,7 @@ msgstr "Pengguna yang menyerahkan order ini" #: build/models.py:283 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:101 #: order/templates/order/order_base.html:185 -#: order/templates/order/sales_order_base.html:183 part/models.py:1005 +#: order/templates/order/sales_order_base.html:183 part/models.py:1006 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2658 templates/js/translated/order.js:2064 msgid "Responsible" @@ -936,7 +942,7 @@ msgstr "Pengguna yang bertanggung jawab atas order ini" #: build/models.py:289 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:188 -#: part/templates/part/part_base.html:376 stock/models.py:714 +#: part/templates/part/part_base.html:390 stock/models.py:714 #: stock/templates/stock/item_base.html:203 msgid "External Link" msgstr "Tautan eksternal" @@ -1011,8 +1017,8 @@ msgstr "" #: templates/js/translated/order.js:107 templates/js/translated/order.js:3200 #: templates/js/translated/order.js:3502 templates/js/translated/order.js:3507 #: templates/js/translated/order.js:3602 templates/js/translated/order.js:3694 -#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 -#: templates/js/translated/stock.js:2625 +#: templates/js/translated/part.js:803 templates/js/translated/stock.js:618 +#: templates/js/translated/stock.js:783 templates/js/translated/stock.js:2620 msgid "Stock Item" msgstr "Stok Item" @@ -1022,12 +1028,13 @@ msgstr "Sumber stok item" #: build/models.py:1364 build/serializers.py:192 #: build/templates/build/build_base.html:85 -#: build/templates/build/detail.html:34 common/models.py:1842 +#: build/templates/build/detail.html:34 common/models.py:1849 #: order/models.py:934 order/models.py:1460 order/serializers.py:1206 -#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:223 -#: part/forms.py:40 part/models.py:3359 +#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:256 +#: part/forms.py:40 part/models.py:2919 part/models.py:3437 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 +#: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_base.html:113 #: report/templates/report/inventree_po_report.html:90 #: report/templates/report/inventree_so_report.html:91 @@ -1049,13 +1056,14 @@ msgstr "Sumber stok item" #: templates/js/translated/order.js:3201 templates/js/translated/order.js:3521 #: templates/js/translated/order.js:3608 templates/js/translated/order.js:3700 #: templates/js/translated/order.js:3847 templates/js/translated/order.js:4338 -#: templates/js/translated/part.js:1078 templates/js/translated/part.js:2568 +#: templates/js/translated/part.js:805 templates/js/translated/part.js:876 +#: templates/js/translated/part.js:1349 templates/js/translated/part.js:2849 #: templates/js/translated/pricing.js:114 #: templates/js/translated/pricing.js:207 #: templates/js/translated/pricing.js:255 -#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:490 -#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:814 -#: templates/js/translated/stock.js:2674 templates/js/translated/stock.js:2759 +#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:489 +#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:813 +#: templates/js/translated/stock.js:2669 templates/js/translated/stock.js:2754 msgid "Quantity" msgstr "Jumlah" @@ -1097,8 +1105,8 @@ msgid "Enter quantity for build output" msgstr "Masukkan jumlah hasil pesanan" #: build/serializers.py:207 build/serializers.py:683 order/models.py:327 -#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:645 -#: part/serializers.py:1016 stock/models.py:574 stock/models.py:1312 +#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:686 +#: part/serializers.py:1057 stock/models.py:574 stock/models.py:1312 #: stock/serializers.py:294 msgid "Quantity must be greater than zero" msgstr "Jumlah harus lebih besar daripada nol" @@ -1113,7 +1121,7 @@ msgstr "Jumlah harus angka bulat karena terdapat bagian yang dapat dilacak dalam #: build/serializers.py:231 order/serializers.py:463 order/serializers.py:1210 #: stock/serializers.py:303 templates/js/translated/order.js:1545 -#: templates/js/translated/stock.js:303 templates/js/translated/stock.js:491 +#: templates/js/translated/stock.js:302 templates/js/translated/stock.js:490 msgid "Serial Numbers" msgstr "Nomor Seri" @@ -1146,9 +1154,10 @@ msgstr "Daftar hasil pesanan harus disediakan" #: templates/js/translated/build.js:1759 templates/js/translated/order.js:1572 #: templates/js/translated/order.js:3514 templates/js/translated/order.js:3619 #: templates/js/translated/order.js:3627 templates/js/translated/order.js:3708 -#: templates/js/translated/part.js:183 templates/js/translated/stock.js:620 -#: templates/js/translated/stock.js:785 templates/js/translated/stock.js:995 -#: templates/js/translated/stock.js:1895 templates/js/translated/stock.js:2566 +#: templates/js/translated/part.js:186 templates/js/translated/part.js:804 +#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 +#: templates/js/translated/stock.js:994 templates/js/translated/stock.js:1890 +#: templates/js/translated/stock.js:2561 msgid "Location" msgstr "Lokasi" @@ -1162,8 +1171,8 @@ msgstr "Lokasi hasil pesanan yang selesai" #: stock/templates/stock/item_base.html:421 #: templates/js/translated/barcode.js:237 templates/js/translated/build.js:2630 #: templates/js/translated/order.js:1681 templates/js/translated/order.js:2034 -#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1870 -#: templates/js/translated/stock.js:2643 templates/js/translated/stock.js:2775 +#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:2638 templates/js/translated/stock.js:2770 msgid "Status" msgstr "Status" @@ -1239,8 +1248,8 @@ msgstr "Jumlah produksi yang diperlukan masih belum cukup" msgid "Build order has incomplete outputs" msgstr "Order memiliki hasil produksi yang belum dilengkapi" -#: build/serializers.py:595 build/serializers.py:640 part/models.py:3495 -#: part/models.py:3651 +#: build/serializers.py:595 build/serializers.py:640 part/models.py:3573 +#: part/models.py:3729 msgid "BOM Item" msgstr "Item tagihan material" @@ -1406,7 +1415,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2670 templates/js/translated/order.js:2051 #: templates/js/translated/order.js:2382 templates/js/translated/order.js:2866 -#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1093 +#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1364 msgid "Target Date" msgstr "" @@ -1484,8 +1493,8 @@ msgstr "" #: stock/templates/stock/item_base.html:168 #: templates/js/translated/build.js:1250 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:1884 -#: templates/js/translated/stock.js:2782 +#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:1879 +#: templates/js/translated/stock.js:2777 #: templates/js/translated/table_filters.js:179 #: templates/js/translated/table_filters.js:270 msgid "Batch" @@ -1617,8 +1626,8 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:86 #: order/templates/order/sales_order_detail.html:140 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:210 -#: part/templates/part/part_sidebar.html:55 stock/templates/stock/item.html:117 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:233 +#: part/templates/part/part_sidebar.html:60 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" msgstr "" @@ -1635,7 +1644,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:316 +#: build/templates/build/index.html:18 part/templates/part/detail.html:339 msgid "New Build Order" msgstr "" @@ -1928,9 +1937,9 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1014 part/admin.py:41 part/models.py:3168 +#: common/models.py:1014 part/admin.py:41 part/models.py:3246 #: report/models.py:158 templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:504 +#: templates/js/translated/table_filters.js:508 msgid "Template" msgstr "" @@ -1938,7 +1947,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:1021 part/admin.py:37 part/admin.py:229 part/models.py:957 +#: common/models.py:1021 part/admin.py:37 part/admin.py:262 part/models.py:958 #: templates/js/translated/bom.js:1595 #: templates/js/translated/table_filters.js:196 #: templates/js/translated/table_filters.js:467 @@ -1949,7 +1958,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1028 part/admin.py:38 part/models.py:963 +#: common/models.py:1028 part/admin.py:38 part/models.py:964 #: templates/js/translated/table_filters.js:475 msgid "Component" msgstr "" @@ -1958,7 +1967,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1035 part/admin.py:39 part/models.py:974 +#: common/models.py:1035 part/admin.py:39 part/models.py:975 msgid "Purchaseable" msgstr "" @@ -1966,7 +1975,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1042 part/admin.py:40 part/models.py:979 +#: common/models.py:1042 part/admin.py:40 part/models.py:980 #: templates/js/translated/table_filters.js:496 msgid "Salable" msgstr "" @@ -1975,10 +1984,10 @@ msgstr "" msgid "Parts are salable by default" msgstr "" -#: common/models.py:1049 part/admin.py:42 part/models.py:969 +#: common/models.py:1049 part/admin.py:42 part/models.py:970 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:120 -#: templates/js/translated/table_filters.js:508 +#: templates/js/translated/table_filters.js:512 msgid "Trackable" msgstr "" @@ -1986,10 +1995,10 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1056 part/admin.py:43 part/models.py:989 +#: common/models.py:1056 part/admin.py:43 part/models.py:990 #: part/templates/part/part_base.html:156 #: templates/js/translated/table_filters.js:42 -#: templates/js/translated/table_filters.js:512 +#: templates/js/translated/table_filters.js:516 msgid "Virtual" msgstr "" @@ -2417,7 +2426,7 @@ msgstr "" msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1461 common/models.py:1803 +#: common/models.py:1461 common/models.py:1810 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -2749,41 +2758,50 @@ msgstr "" msgid "Display part scheduling information" msgstr "" -#: common/models.py:1778 -msgid "Table String Length" +#: common/models.py:1778 part/templates/part/detail.html:61 +#: templates/js/translated/part.js:822 +msgid "Part Stocktake" msgstr "" #: common/models.py:1779 +msgid "Display part stocktake information" +msgstr "" + +#: common/models.py:1785 +msgid "Table String Length" +msgstr "" + +#: common/models.py:1786 msgid "Maximimum length limit for strings displayed in table views" msgstr "" -#: common/models.py:1843 +#: common/models.py:1850 msgid "Price break quantity" msgstr "" -#: common/models.py:1850 company/serializers.py:393 order/models.py:975 -#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1145 +#: common/models.py:1857 company/serializers.py:393 order/models.py:975 +#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1416 #: templates/js/translated/pricing.js:354 msgid "Price" msgstr "" -#: common/models.py:1851 +#: common/models.py:1858 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2011 common/models.py:2189 +#: common/models.py:2018 common/models.py:2196 msgid "Endpoint" msgstr "" -#: common/models.py:2012 +#: common/models.py:2019 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2021 +#: common/models.py:2028 msgid "Name for this webhook" msgstr "" -#: common/models.py:2026 part/admin.py:36 part/models.py:984 +#: common/models.py:2033 part/admin.py:36 part/models.py:985 #: plugin/models.py:100 templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:116 #: templates/js/translated/table_filters.js:336 @@ -2791,131 +2809,133 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:2027 +#: common/models.py:2034 msgid "Is this webhook active" msgstr "" -#: common/models.py:2041 +#: common/models.py:2048 msgid "Token" msgstr "" -#: common/models.py:2042 +#: common/models.py:2049 msgid "Token for access" msgstr "" -#: common/models.py:2049 +#: common/models.py:2056 msgid "Secret" msgstr "" -#: common/models.py:2050 +#: common/models.py:2057 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2156 +#: common/models.py:2163 msgid "Message ID" msgstr "" -#: common/models.py:2157 +#: common/models.py:2164 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2165 +#: common/models.py:2172 msgid "Host" msgstr "" -#: common/models.py:2166 +#: common/models.py:2173 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2173 +#: common/models.py:2180 msgid "Header" msgstr "" -#: common/models.py:2174 +#: common/models.py:2181 msgid "Header of this message" msgstr "" -#: common/models.py:2180 +#: common/models.py:2187 msgid "Body" msgstr "" -#: common/models.py:2181 +#: common/models.py:2188 msgid "Body of this message" msgstr "" -#: common/models.py:2190 +#: common/models.py:2197 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2195 +#: common/models.py:2202 msgid "Worked on" msgstr "" -#: common/models.py:2196 +#: common/models.py:2203 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2355 +#: common/models.py:2362 msgid "Id" msgstr "" -#: common/models.py:2361 templates/js/translated/news.js:35 +#: common/models.py:2368 templates/js/translated/news.js:35 msgid "Title" msgstr "" -#: common/models.py:2371 templates/js/translated/news.js:51 +#: common/models.py:2378 templates/js/translated/news.js:51 msgid "Published" msgstr "" -#: common/models.py:2376 templates/InvenTree/settings/plugin.html:62 +#: common/models.py:2383 templates/InvenTree/settings/plugin.html:62 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/news.js:47 msgid "Author" msgstr "" -#: common/models.py:2381 templates/js/translated/news.js:43 +#: common/models.py:2388 templates/js/translated/news.js:43 msgid "Summary" msgstr "" -#: common/models.py:2386 +#: common/models.py:2393 msgid "Read" msgstr "" -#: common/models.py:2387 +#: common/models.py:2394 msgid "Was this news item read?" msgstr "" -#: common/notifications.py:293 +#: common/notifications.py:294 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:295 +#: common/notifications.py:296 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:301 +#: common/notifications.py:302 msgid "Items Received" msgstr "" -#: common/notifications.py:303 +#: common/notifications.py:304 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:415 +#: common/notifications.py:416 msgid "Error raised by plugin" msgstr "" #: common/views.py:85 order/templates/order/order_wizard/po_upload.html:51 #: order/templates/order/purchase_order_detail.html:25 order/views.py:102 -#: part/views.py:107 templates/patterns/wizard/upload.html:37 +#: part/templates/part/import_wizard/part_upload.html:58 part/views.py:109 +#: templates/patterns/wizard/upload.html:37 msgid "Upload File" msgstr "" #: common/views.py:86 order/templates/order/order_wizard/match_fields.html:52 #: order/views.py:103 #: part/templates/part/import_wizard/ajax_match_fields.html:45 -#: part/views.py:108 templates/patterns/wizard/match_fields.html:51 +#: part/templates/part/import_wizard/match_fields.html:52 part/views.py:110 +#: templates/patterns/wizard/match_fields.html:51 msgid "Match Fields" msgstr "" @@ -2934,7 +2954,9 @@ msgstr "" #: common/views.py:509 order/templates/order/order_wizard/match_fields.html:27 #: order/templates/order/order_wizard/match_parts.html:19 #: order/templates/order/order_wizard/po_upload.html:49 +#: part/templates/part/import_wizard/match_fields.html:27 #: part/templates/part/import_wizard/match_references.html:19 +#: part/templates/part/import_wizard/part_upload.html:56 #: templates/patterns/wizard/match_fields.html:26 #: templates/patterns/wizard/upload.html:35 msgid "Previous Step" @@ -2995,7 +3017,7 @@ msgstr "" msgid "Link to external company information" msgstr "" -#: company/models.py:140 part/models.py:878 +#: company/models.py:140 part/models.py:879 msgid "Image" msgstr "" @@ -3028,8 +3050,8 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:153 company/serializers.py:399 -#: company/templates/company/company_base.html:107 part/models.py:2762 -#: part/serializers.py:154 part/serializers.py:182 stock/serializers.py:182 +#: company/templates/company/company_base.html:107 part/models.py:2780 +#: part/serializers.py:156 part/serializers.py:184 stock/serializers.py:182 #: templates/InvenTree/settings/pricing.html:64 msgid "Currency" msgstr "" @@ -3055,12 +3077,12 @@ msgstr "" #: templates/js/translated/company.js:433 #: templates/js/translated/company.js:534 #: templates/js/translated/company.js:669 -#: templates/js/translated/company.js:957 templates/js/translated/part.js:238 +#: templates/js/translated/company.js:957 templates/js/translated/part.js:241 #: templates/js/translated/table_filters.js:439 msgid "Manufacturer" msgstr "" -#: company/models.py:269 templates/js/translated/part.js:239 +#: company/models.py:269 templates/js/translated/part.js:242 msgid "Select manufacturer" msgstr "" @@ -3070,11 +3092,11 @@ msgstr "" #: templates/js/translated/company.js:533 #: templates/js/translated/company.js:685 #: templates/js/translated/company.js:976 templates/js/translated/order.js:2286 -#: templates/js/translated/part.js:249 templates/js/translated/part.js:1067 +#: templates/js/translated/part.js:252 templates/js/translated/part.js:1338 msgid "MPN" msgstr "" -#: company/models.py:276 templates/js/translated/part.js:250 +#: company/models.py:276 templates/js/translated/part.js:253 msgid "Manufacturer Part Number" msgstr "" @@ -3100,8 +3122,8 @@ msgstr "" #: company/models.py:370 #: report/templates/report/inventree_test_report_base.html:95 #: stock/models.py:2156 templates/js/translated/company.js:582 -#: templates/js/translated/company.js:800 templates/js/translated/part.js:889 -#: templates/js/translated/stock.js:1399 +#: templates/js/translated/company.js:800 templates/js/translated/part.js:1160 +#: templates/js/translated/stock.js:1398 msgid "Value" msgstr "" @@ -3109,10 +3131,10 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:377 part/admin.py:26 part/models.py:951 -#: part/models.py:3128 part/templates/part/part_base.html:286 -#: templates/InvenTree/settings/settings.html:349 -#: templates/js/translated/company.js:806 templates/js/translated/part.js:895 +#: company/models.py:377 part/admin.py:26 part/models.py:952 +#: part/models.py:3206 part/templates/part/part_base.html:286 +#: templates/InvenTree/settings/settings.html:350 +#: templates/js/translated/company.js:806 templates/js/translated/part.js:1166 msgid "Units" msgstr "" @@ -3132,24 +3154,24 @@ msgstr "" #: templates/js/translated/company.js:304 #: templates/js/translated/company.js:437 #: templates/js/translated/company.js:930 templates/js/translated/order.js:2017 -#: templates/js/translated/part.js:219 templates/js/translated/part.js:1035 +#: templates/js/translated/part.js:222 templates/js/translated/part.js:1306 #: templates/js/translated/pricing.js:231 #: templates/js/translated/table_filters.js:443 msgid "Supplier" msgstr "" -#: company/models.py:498 templates/js/translated/part.js:220 +#: company/models.py:498 templates/js/translated/part.js:223 msgid "Select supplier" msgstr "" #: company/models.py:503 company/templates/company/supplier_part.html:146 #: part/bom.py:253 part/bom.py:281 templates/js/translated/company.js:303 -#: templates/js/translated/order.js:2273 templates/js/translated/part.js:230 -#: templates/js/translated/part.js:1053 templates/js/translated/pricing.js:243 +#: templates/js/translated/order.js:2273 templates/js/translated/part.js:233 +#: templates/js/translated/part.js:1324 templates/js/translated/pricing.js:243 msgid "SKU" msgstr "" -#: company/models.py:504 templates/js/translated/part.js:231 +#: company/models.py:504 templates/js/translated/part.js:234 msgid "Supplier stock keeping unit" msgstr "" @@ -3166,24 +3188,25 @@ msgid "Supplier part description" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:181 -#: part/admin.py:225 part/models.py:3381 part/templates/part/upload_bom.html:59 +#: part/admin.py:258 part/models.py:3459 part/templates/part/upload_bom.html:59 +#: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:397 msgid "Note" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "base cost" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:534 company/templates/company/supplier_part.html:167 #: stock/admin.py:101 stock/models.py:682 #: stock/templates/stock/item_base.html:243 -#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2016 +#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2011 msgid "Packaging" msgstr "" @@ -3196,7 +3219,7 @@ msgstr "" #: templates/js/translated/company.js:997 templates/js/translated/order.js:826 #: templates/js/translated/order.js:1253 templates/js/translated/order.js:1508 #: templates/js/translated/order.js:2317 templates/js/translated/order.js:2334 -#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1137 +#: templates/js/translated/part.js:1356 templates/js/translated/part.js:1408 msgid "Pack Quantity" msgstr "" @@ -3204,7 +3227,7 @@ msgstr "" msgid "Unit quantity supplied in a single pack" msgstr "" -#: company/models.py:544 part/models.py:1863 +#: company/models.py:544 part/models.py:1869 msgid "multiple" msgstr "" @@ -3216,8 +3239,8 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:1118 templates/js/translated/build.js:1883 -#: templates/js/translated/build.js:2770 templates/js/translated/part.js:623 -#: templates/js/translated/part.js:626 +#: templates/js/translated/build.js:2770 templates/js/translated/part.js:626 +#: templates/js/translated/part.js:629 #: templates/js/translated/table_filters.js:206 msgid "Available" msgstr "" @@ -3300,7 +3323,7 @@ msgstr "" #: stock/templates/stock/item_base.html:399 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:429 templates/js/translated/order.js:2827 -#: templates/js/translated/stock.js:2607 +#: templates/js/translated/stock.js:2602 #: templates/js/translated/table_filters.js:447 msgid "Customer" msgstr "" @@ -3314,7 +3337,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:206 -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:525 msgid "Remove Image" msgstr "" @@ -3323,19 +3346,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:209 -#: part/templates/part/part_base.html:514 +#: part/templates/part/part_base.html:528 #: templates/InvenTree/settings/user.html:87 #: templates/InvenTree/settings/user.html:149 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:238 -#: part/templates/part/part_base.html:543 +#: part/templates/part/part_base.html:557 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:253 -#: part/templates/part/part_base.html:598 +#: part/templates/part/part_base.html:612 msgid "Download Image" msgstr "" @@ -3351,7 +3374,7 @@ msgstr "" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:357 +#: part/templates/part/detail.html:380 msgid "New Supplier Part" msgstr "" @@ -3380,7 +3403,7 @@ msgstr "" msgid "Create new manufacturer part" msgstr "" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:387 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:410 msgid "New Manufacturer Part" msgstr "" @@ -3394,9 +3417,9 @@ msgstr "" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:35 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:35 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:200 -#: templates/InvenTree/settings/sidebar.html:49 +#: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:293 templates/navbar.html:50 #: users/models.py:42 msgid "Purchase Orders" @@ -3417,9 +3440,9 @@ msgstr "" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:39 +#: part/templates/part/detail.html:130 part/templates/part/part_sidebar.html:39 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:220 -#: templates/InvenTree/settings/sidebar.html:51 +#: templates/InvenTree/settings/sidebar.html:53 #: templates/js/translated/search.js:317 templates/navbar.html:61 #: users/models.py:43 msgid "Sales Orders" @@ -3451,7 +3474,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:221 -#: part/templates/part/detail.html:87 part/templates/part/part_base.html:85 +#: part/templates/part/detail.html:110 part/templates/part/part_base.html:85 msgid "Order part" msgstr "" @@ -3482,28 +3505,28 @@ msgid "Suppliers" msgstr "" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:368 +#: part/templates/part/detail.html:391 msgid "Delete supplier parts" msgstr "" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:369 part/templates/part/detail.html:399 -#: templates/js/translated/forms.js:455 templates/js/translated/helpers.js:38 -#: templates/js/translated/part.js:351 templates/js/translated/stock.js:188 -#: users/models.py:224 +#: part/templates/part/detail.html:392 part/templates/part/detail.html:422 +#: templates/js/translated/forms.js:458 templates/js/translated/helpers.js:38 +#: templates/js/translated/part.js:354 templates/js/translated/stock.js:187 +#: users/models.py:225 msgid "Delete" msgstr "" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:184 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:207 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:189 +#: part/templates/part/detail.html:212 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:62 msgid "New Parameter" @@ -3514,7 +3537,7 @@ msgid "Delete parameters" msgstr "" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:825 +#: part/templates/part/detail.html:865 msgid "Add Parameter" msgstr "" @@ -3538,7 +3561,7 @@ msgstr "" #: company/templates/company/supplier_part.html:24 stock/models.py:665 #: stock/templates/stock/item_base.html:236 #: templates/js/translated/company.js:946 templates/js/translated/order.js:1173 -#: templates/js/translated/stock.js:1974 +#: templates/js/translated/stock.js:1969 msgid "Supplier Part" msgstr "" @@ -3578,7 +3601,7 @@ msgstr "" #: company/templates/company/supplier_part.html:56 #: company/templates/company/supplier_part.html:57 #: company/templates/company/supplier_part.html:222 -#: part/templates/part/detail.html:88 +#: part/templates/part/detail.html:111 msgid "Order Part" msgstr "" @@ -3630,7 +3653,7 @@ msgstr "" #: company/templates/company/supplier_part.html:204 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:198 -#: templates/js/translated/stock.js:467 +#: templates/js/translated/stock.js:466 msgid "New Stock Item" msgstr "" @@ -3662,10 +3685,10 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 -#: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/part.js:777 templates/js/translated/part.js:1378 -#: templates/js/translated/part.js:1534 templates/js/translated/stock.js:994 -#: templates/js/translated/stock.js:1799 templates/navbar.html:31 +#: templates/InvenTree/settings/sidebar.html:47 +#: templates/js/translated/part.js:1048 templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1805 templates/js/translated/stock.js:993 +#: templates/js/translated/stock.js:1794 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3680,7 +3703,7 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:29 #: part/templates/part/part_sidebar.html:30 -#: templates/InvenTree/settings/sidebar.html:35 +#: templates/InvenTree/settings/sidebar.html:37 msgid "Pricing" msgstr "" @@ -3692,7 +3715,7 @@ msgstr "" #: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:155 templates/js/translated/search.js:225 -#: templates/js/translated/stock.js:2484 users/models.py:40 +#: templates/js/translated/stock.js:2479 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3801,9 +3824,9 @@ msgstr "" #: stock/templates/stock/item_base.html:182 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:619 templates/js/translated/order.js:1174 -#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1012 -#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1954 -#: templates/js/translated/stock.js:2588 +#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1283 +#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1949 +#: templates/js/translated/stock.js:2583 msgid "Purchase Order" msgstr "" @@ -3973,7 +3996,7 @@ msgstr "" #: order/models.py:1046 order/templates/order/order_base.html:178 #: templates/js/translated/order.js:1679 templates/js/translated/order.js:2404 -#: templates/js/translated/part.js:1129 templates/js/translated/part.js:1161 +#: templates/js/translated/part.js:1400 templates/js/translated/part.js:1432 #: templates/js/translated/table_filters.js:358 msgid "Received" msgstr "" @@ -3984,7 +4007,7 @@ msgstr "" #: order/models.py:1054 stock/models.py:800 stock/serializers.py:173 #: stock/templates/stock/item_base.html:189 -#: templates/js/translated/stock.js:2005 +#: templates/js/translated/stock.js:2000 msgid "Purchase Price" msgstr "" @@ -4350,18 +4373,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:9 #: part/templates/part/import_wizard/ajax_match_fields.html:9 +#: part/templates/part/import_wizard/match_fields.html:9 #: templates/patterns/wizard/match_fields.html:8 msgid "Missing selections for the following required columns" msgstr "" #: order/templates/order/order_wizard/match_fields.html:20 #: part/templates/part/import_wizard/ajax_match_fields.html:20 +#: part/templates/part/import_wizard/match_fields.html:20 #: templates/patterns/wizard/match_fields.html:19 msgid "Duplicate selections found, see below. Fix them then retry submitting." msgstr "" #: order/templates/order/order_wizard/match_fields.html:29 #: order/templates/order/order_wizard/match_parts.html:21 +#: part/templates/part/import_wizard/match_fields.html:29 #: part/templates/part/import_wizard/match_references.html:21 #: templates/patterns/wizard/match_fields.html:28 msgid "Submit Selections" @@ -4369,18 +4395,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:35 #: part/templates/part/import_wizard/ajax_match_fields.html:28 +#: part/templates/part/import_wizard/match_fields.html:35 #: templates/patterns/wizard/match_fields.html:34 msgid "File Fields" msgstr "" #: order/templates/order/order_wizard/match_fields.html:42 #: part/templates/part/import_wizard/ajax_match_fields.html:35 +#: part/templates/part/import_wizard/match_fields.html:42 #: templates/patterns/wizard/match_fields.html:41 msgid "Remove column" msgstr "" #: order/templates/order/order_wizard/match_fields.html:60 #: part/templates/part/import_wizard/ajax_match_fields.html:53 +#: part/templates/part/import_wizard/match_fields.html:60 #: templates/patterns/wizard/match_fields.html:59 msgid "Duplicate selection" msgstr "" @@ -4389,12 +4418,13 @@ msgstr "" #: order/templates/order/order_wizard/match_parts.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: 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:102 templates/js/translated/build.js:485 #: templates/js/translated/build.js:641 templates/js/translated/build.js:2088 #: templates/js/translated/order.js:1122 templates/js/translated/order.js:1624 -#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:657 -#: templates/js/translated/stock.js:825 +#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:824 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4429,6 +4459,7 @@ msgstr "" #: order/templates/order/order_wizard/po_upload.html:27 #: part/templates/part/import_wizard/ajax_part_upload.html:10 +#: part/templates/part/import_wizard/part_upload.html:26 #: templates/patterns/wizard/upload.html:13 #, python-format msgid "Step %(step)s of %(count)s" @@ -4567,12 +4598,12 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:19 part/admin.py:219 part/models.py:3262 stock/admin.py:84 +#: part/admin.py:19 part/admin.py:252 part/models.py:3340 stock/admin.py:84 #: templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/admin.py:20 part/admin.py:221 part/models.py:3266 stock/admin.py:85 +#: part/admin.py:20 part/admin.py:254 part/models.py:3344 stock/admin.py:85 msgid "Part Name" msgstr "" @@ -4580,32 +4611,32 @@ msgstr "" msgid "Part Description" msgstr "" -#: part/admin.py:22 part/models.py:852 part/templates/part/part_base.html:272 -#: templates/js/translated/part.js:763 templates/js/translated/part.js:1491 -#: templates/js/translated/stock.js:1765 +#: part/admin.py:22 part/models.py:853 part/templates/part/part_base.html:272 +#: templates/js/translated/part.js:1034 templates/js/translated/part.js:1762 +#: templates/js/translated/stock.js:1760 msgid "IPN" msgstr "" -#: part/admin.py:23 part/models.py:860 part/templates/part/part_base.html:279 -#: report/models.py:171 templates/js/translated/part.js:768 +#: part/admin.py:23 part/models.py:861 part/templates/part/part_base.html:279 +#: report/models.py:171 templates/js/translated/part.js:1039 msgid "Revision" msgstr "" -#: part/admin.py:24 part/admin.py:145 part/models.py:838 +#: part/admin.py:24 part/admin.py:178 part/models.py:839 #: part/templates/part/category.html:87 part/templates/part/part_base.html:300 msgid "Keywords" msgstr "" -#: part/admin.py:28 part/admin.py:139 +#: part/admin.py:28 part/admin.py:172 #: templates/js/translated/model_renderers.js:338 msgid "Category ID" msgstr "" -#: part/admin.py:29 part/admin.py:140 +#: part/admin.py:29 part/admin.py:173 msgid "Category Name" msgstr "" -#: part/admin.py:30 part/admin.py:144 +#: part/admin.py:30 part/admin.py:177 msgid "Default Location ID" msgstr "" @@ -4613,7 +4644,7 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:33 part/models.py:944 part/templates/part/part_base.html:206 +#: part/admin.py:33 part/models.py:945 part/templates/part/part_base.html:206 msgid "Minimum Stock" msgstr "" @@ -4625,8 +4656,8 @@ msgstr "" #: part/admin.py:48 part/bom.py:145 part/templates/part/part_base.html:213 #: templates/js/translated/bom.js:1156 templates/js/translated/build.js:1935 -#: templates/js/translated/part.js:613 templates/js/translated/part.js:633 -#: templates/js/translated/part.js:1381 templates/js/translated/part.js:1559 +#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 +#: templates/js/translated/part.js:1652 templates/js/translated/part.js:1830 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4642,115 +4673,115 @@ msgid "Allocated" msgstr "" #: part/admin.py:51 part/templates/part/part_base.html:244 -#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 -#: templates/js/translated/part.js:1385 templates/js/translated/part.js:1566 +#: templates/js/translated/part.js:619 templates/js/translated/part.js:639 +#: templates/js/translated/part.js:1656 templates/js/translated/part.js:1837 msgid "Building" msgstr "" -#: part/admin.py:52 part/models.py:2846 +#: part/admin.py:52 part/models.py:2864 msgid "Minimum Cost" msgstr "" -#: part/admin.py:53 part/models.py:2852 +#: part/admin.py:53 part/models.py:2870 msgid "Maximum Cost" msgstr "" -#: part/admin.py:142 part/admin.py:216 stock/admin.py:26 stock/admin.py:98 +#: part/admin.py:175 part/admin.py:249 stock/admin.py:26 stock/admin.py:98 msgid "Parent ID" msgstr "" -#: part/admin.py:143 part/admin.py:218 stock/admin.py:27 +#: part/admin.py:176 part/admin.py:251 stock/admin.py:27 msgid "Parent Name" msgstr "" -#: part/admin.py:146 part/templates/part/category.html:81 +#: part/admin.py:179 part/templates/part/category.html:81 #: part/templates/part/category.html:94 msgid "Category Path" msgstr "" -#: part/admin.py:149 part/models.py:382 part/templates/part/cat_link.html:3 +#: part/admin.py:182 part/models.py:383 part/templates/part/cat_link.html:3 #: part/templates/part/category.html:23 part/templates/part/category.html:134 #: part/templates/part/category.html:154 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:84 -#: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:2065 templates/js/translated/search.js:146 +#: templates/InvenTree/settings/sidebar.html:43 +#: templates/js/translated/part.js:2346 templates/js/translated/search.js:146 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" -#: part/admin.py:211 +#: part/admin.py:244 msgid "BOM Level" msgstr "" -#: part/admin.py:213 +#: part/admin.py:246 msgid "BOM Item ID" msgstr "" -#: part/admin.py:217 +#: part/admin.py:250 msgid "Parent IPN" msgstr "" -#: part/admin.py:220 part/models.py:3270 +#: part/admin.py:253 part/models.py:3348 msgid "Part IPN" msgstr "" -#: part/admin.py:226 templates/js/translated/pricing.js:91 +#: part/admin.py:259 templates/js/translated/pricing.js:91 #: templates/js/translated/pricing.js:732 msgid "Minimum Price" msgstr "" -#: part/admin.py:227 templates/js/translated/pricing.js:86 +#: part/admin.py:260 templates/js/translated/pricing.js:86 #: templates/js/translated/pricing.js:740 msgid "Maximum Price" msgstr "" -#: part/api.py:536 +#: part/api.py:538 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:556 +#: part/api.py:558 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:574 +#: part/api.py:576 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:660 +#: part/api.py:662 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:818 +#: part/api.py:820 msgid "Valid" msgstr "" -#: part/api.py:819 +#: part/api.py:821 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:825 +#: part/api.py:827 msgid "This option must be selected" msgstr "" -#: part/api.py:1265 +#: part/api.py:1281 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1269 +#: part/api.py:1285 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1284 +#: part/api.py:1300 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1315 part/api.py:1319 part/api.py:1334 part/api.py:1338 +#: part/api.py:1331 part/api.py:1335 part/api.py:1350 part/api.py:1354 msgid "This field is required" msgstr "" -#: part/bom.py:142 part/models.py:116 part/models.py:887 -#: part/templates/part/category.html:109 part/templates/part/part_base.html:360 +#: part/bom.py:142 part/models.py:116 part/models.py:888 +#: part/templates/part/category.html:109 part/templates/part/part_base.html:374 msgid "Default Location" msgstr "" @@ -4801,7 +4832,7 @@ msgstr "" msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:159 part/models.py:3211 part/templates/part/category.html:16 +#: part/models.py:159 part/models.py:3289 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -4812,423 +4843,459 @@ msgstr "" msgid "Part Categories" msgstr "" -#: part/models.py:468 +#: part/models.py:469 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:538 part/models.py:550 +#: part/models.py:539 part/models.py:551 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:640 +#: part/models.py:641 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:771 +#: part/models.py:772 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:776 +#: part/models.py:777 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:790 +#: part/models.py:791 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:808 part/models.py:3267 +#: part/models.py:809 part/models.py:3345 msgid "Part name" msgstr "" -#: part/models.py:815 +#: part/models.py:816 msgid "Is Template" msgstr "" -#: part/models.py:816 +#: part/models.py:817 msgid "Is this part a template part?" msgstr "" -#: part/models.py:826 +#: part/models.py:827 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:827 +#: part/models.py:828 msgid "Variant Of" msgstr "" -#: part/models.py:833 +#: part/models.py:834 msgid "Part description" msgstr "" -#: part/models.py:839 +#: part/models.py:840 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:846 part/models.py:2966 part/models.py:3210 +#: part/models.py:847 part/models.py:3044 part/models.py:3288 #: part/templates/part/part_base.html:263 -#: templates/InvenTree/settings/settings.html:229 +#: templates/InvenTree/settings/settings.html:230 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1513 templates/js/translated/part.js:1770 +#: templates/js/translated/part.js:1784 templates/js/translated/part.js:2051 msgid "Category" msgstr "" -#: part/models.py:847 +#: part/models.py:848 msgid "Part category" msgstr "" -#: part/models.py:853 +#: part/models.py:854 msgid "Internal Part Number" msgstr "" -#: part/models.py:859 +#: part/models.py:860 msgid "Part revision or version number" msgstr "" -#: part/models.py:885 +#: part/models.py:886 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:930 part/templates/part/part_base.html:369 +#: part/models.py:931 part/templates/part/part_base.html:383 msgid "Default Supplier" msgstr "" -#: part/models.py:931 +#: part/models.py:932 msgid "Default supplier part" msgstr "" -#: part/models.py:938 +#: part/models.py:939 msgid "Default Expiry" msgstr "" -#: part/models.py:939 +#: part/models.py:940 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:945 +#: part/models.py:946 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:952 +#: part/models.py:953 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:958 +#: part/models.py:959 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:964 +#: part/models.py:965 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:970 +#: part/models.py:971 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:975 +#: part/models.py:976 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:980 +#: part/models.py:981 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:985 +#: part/models.py:986 msgid "Is this part active?" msgstr "" -#: part/models.py:990 +#: part/models.py:991 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:992 +#: part/models.py:993 msgid "Part notes" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "BOM checksum" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:997 +#: part/models.py:998 msgid "BOM checked by" msgstr "" -#: part/models.py:999 +#: part/models.py:1000 msgid "BOM checked date" msgstr "" -#: part/models.py:1003 +#: part/models.py:1004 msgid "Creation User" msgstr "" -#: part/models.py:1863 +#: part/models.py:1010 part/templates/part/part_base.html:345 +#: stock/templates/stock/item_base.html:445 +#: templates/js/translated/part.js:1901 +msgid "Last Stocktake" +msgstr "" + +#: part/models.py:1869 msgid "Sell multiple" msgstr "" -#: part/models.py:2763 +#: part/models.py:2781 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:2768 +#: part/models.py:2786 templates/js/translated/part.js:806 msgid "Updated" msgstr "" -#: part/models.py:2769 +#: part/models.py:2787 msgid "Timestamp of last pricing update" msgstr "" -#: part/models.py:2786 +#: part/models.py:2804 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:2787 +#: part/models.py:2805 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:2792 +#: part/models.py:2810 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:2793 +#: part/models.py:2811 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:2798 +#: part/models.py:2816 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:2799 +#: part/models.py:2817 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:2804 +#: part/models.py:2822 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:2805 +#: part/models.py:2823 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:2810 +#: part/models.py:2828 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:2811 +#: part/models.py:2829 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:2816 +#: part/models.py:2834 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:2817 +#: part/models.py:2835 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:2822 +#: part/models.py:2840 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:2823 +#: part/models.py:2841 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:2828 +#: part/models.py:2846 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:2829 +#: part/models.py:2847 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:2834 +#: part/models.py:2852 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:2835 +#: part/models.py:2853 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:2840 +#: part/models.py:2858 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:2841 +#: part/models.py:2859 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:2847 +#: part/models.py:2865 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:2853 +#: part/models.py:2871 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:2858 +#: part/models.py:2876 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:2859 +#: part/models.py:2877 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:2864 +#: part/models.py:2882 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:2865 +#: part/models.py:2883 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:2870 +#: part/models.py:2888 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:2871 +#: part/models.py:2889 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:2876 +#: part/models.py:2894 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:2877 +#: part/models.py:2895 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3013 +#: part/models.py:2913 +msgid "Part for stocktake" +msgstr "" + +#: part/models.py:2920 +msgid "Total available stock at time of stocktake" +msgstr "" + +#: part/models.py:2924 part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:63 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:2043 templates/js/translated/part.js:887 +#: templates/js/translated/pricing.js:537 +#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2511 +msgid "Date" +msgstr "" + +#: part/models.py:2925 +msgid "Date stocktake was performed" +msgstr "" + +#: part/models.py:2933 +msgid "Additional notes" +msgstr "" + +#: part/models.py:2941 +msgid "User who performed this stocktake" +msgstr "" + +#: part/models.py:3091 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3030 +#: part/models.py:3108 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:3050 templates/js/translated/part.js:2116 -#: templates/js/translated/stock.js:1379 +#: part/models.py:3128 templates/js/translated/part.js:2397 +#: templates/js/translated/stock.js:1378 msgid "Test Name" msgstr "" -#: part/models.py:3051 +#: part/models.py:3129 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3056 +#: part/models.py:3134 msgid "Test Description" msgstr "" -#: part/models.py:3057 +#: part/models.py:3135 msgid "Enter description for this test" msgstr "" -#: part/models.py:3062 templates/js/translated/part.js:2125 +#: part/models.py:3140 templates/js/translated/part.js:2406 #: templates/js/translated/table_filters.js:322 msgid "Required" msgstr "" -#: part/models.py:3063 +#: part/models.py:3141 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3068 templates/js/translated/part.js:2133 +#: part/models.py:3146 templates/js/translated/part.js:2414 msgid "Requires Value" msgstr "" -#: part/models.py:3069 +#: part/models.py:3147 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3074 templates/js/translated/part.js:2140 +#: part/models.py:3152 templates/js/translated/part.js:2421 msgid "Requires Attachment" msgstr "" -#: part/models.py:3075 +#: part/models.py:3153 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3116 +#: part/models.py:3194 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3124 +#: part/models.py:3202 msgid "Parameter Name" msgstr "" -#: part/models.py:3128 +#: part/models.py:3206 msgid "Parameter Units" msgstr "" -#: part/models.py:3133 +#: part/models.py:3211 msgid "Parameter description" msgstr "" -#: part/models.py:3166 +#: part/models.py:3244 msgid "Parent Part" msgstr "" -#: part/models.py:3168 part/models.py:3216 part/models.py:3217 -#: templates/InvenTree/settings/settings.html:224 +#: part/models.py:3246 part/models.py:3294 part/models.py:3295 +#: templates/InvenTree/settings/settings.html:225 msgid "Parameter Template" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Data" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Parameter Value" msgstr "" -#: part/models.py:3221 templates/InvenTree/settings/settings.html:233 +#: part/models.py:3299 templates/InvenTree/settings/settings.html:234 msgid "Default Value" msgstr "" -#: part/models.py:3222 +#: part/models.py:3300 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3259 +#: part/models.py:3337 msgid "Part ID or part name" msgstr "" -#: part/models.py:3263 +#: part/models.py:3341 msgid "Unique part ID value" msgstr "" -#: part/models.py:3271 +#: part/models.py:3349 msgid "Part IPN value" msgstr "" -#: part/models.py:3274 +#: part/models.py:3352 msgid "Level" msgstr "" -#: part/models.py:3275 +#: part/models.py:3353 msgid "BOM level" msgstr "" -#: part/models.py:3344 +#: part/models.py:3422 msgid "Select parent part" msgstr "" -#: part/models.py:3352 +#: part/models.py:3430 msgid "Sub part" msgstr "" -#: part/models.py:3353 +#: part/models.py:3431 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:3359 +#: part/models.py:3437 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:3363 part/templates/part/upload_bom.html:58 +#: part/models.py:3441 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:933 templates/js/translated/bom.js:986 #: templates/js/translated/build.js:1868 #: templates/js/translated/table_filters.js:84 @@ -5236,189 +5303,189 @@ msgstr "" msgid "Optional" msgstr "" -#: part/models.py:3364 +#: part/models.py:3442 msgid "This BOM item is optional" msgstr "" -#: part/models.py:3369 templates/js/translated/bom.js:929 +#: part/models.py:3447 templates/js/translated/bom.js:929 #: templates/js/translated/bom.js:995 templates/js/translated/build.js:1859 #: templates/js/translated/table_filters.js:88 msgid "Consumable" msgstr "" -#: part/models.py:3370 +#: part/models.py:3448 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:3374 part/templates/part/upload_bom.html:55 +#: part/models.py:3452 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:3375 +#: part/models.py:3453 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:3378 +#: part/models.py:3456 msgid "BOM item reference" msgstr "" -#: part/models.py:3381 +#: part/models.py:3459 msgid "BOM item notes" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "Checksum" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "BOM line checksum" msgstr "" -#: part/models.py:3387 part/templates/part/upload_bom.html:57 +#: part/models.py:3465 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1012 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:108 msgid "Inherited" msgstr "" -#: part/models.py:3388 +#: part/models.py:3466 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:3393 part/templates/part/upload_bom.html:56 +#: part/models.py:3471 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1004 msgid "Allow Variants" msgstr "" -#: part/models.py:3394 +#: part/models.py:3472 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:3480 stock/models.py:558 +#: part/models.py:3558 stock/models.py:558 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:3489 part/models.py:3491 +#: part/models.py:3567 part/models.py:3569 msgid "Sub part must be specified" msgstr "" -#: part/models.py:3618 +#: part/models.py:3696 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:3639 +#: part/models.py:3717 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:3652 +#: part/models.py:3730 msgid "Parent BOM item" msgstr "" -#: part/models.py:3660 +#: part/models.py:3738 msgid "Substitute part" msgstr "" -#: part/models.py:3675 +#: part/models.py:3753 msgid "Part 1" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Part 2" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Select Related Part" msgstr "" -#: part/models.py:3697 +#: part/models.py:3775 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:3701 +#: part/models.py:3779 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:155 part/serializers.py:183 stock/serializers.py:183 +#: part/serializers.py:157 part/serializers.py:185 stock/serializers.py:183 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:543 +#: part/serializers.py:584 msgid "Update" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:585 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:854 +#: part/serializers.py:895 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:862 +#: part/serializers.py:903 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:863 +#: part/serializers.py:904 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:868 +#: part/serializers.py:909 msgid "Include Inherited" msgstr "" -#: part/serializers.py:869 +#: part/serializers.py:910 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:874 +#: part/serializers.py:915 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:875 +#: part/serializers.py:916 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:921 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:881 +#: part/serializers.py:922 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:962 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:922 +#: part/serializers.py:963 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:952 +#: part/serializers.py:993 msgid "No part column specified" msgstr "" -#: part/serializers.py:995 +#: part/serializers.py:1036 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:998 +#: part/serializers.py:1039 msgid "No matching part found" msgstr "" -#: part/serializers.py:1001 +#: part/serializers.py:1042 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1010 +#: part/serializers.py:1051 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1059 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1039 +#: part/serializers.py:1080 msgid "At least one BOM item is required" msgstr "" @@ -5450,7 +5517,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:267 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:290 msgid "BOM actions" msgstr "" @@ -5507,8 +5574,8 @@ msgstr "" msgid "New Part" msgstr "" -#: part/templates/part/category.html:169 part/templates/part/detail.html:366 -#: part/templates/part/detail.html:397 +#: part/templates/part/category.html:169 part/templates/part/detail.html:389 +#: part/templates/part/detail.html:420 msgid "Options" msgstr "" @@ -5556,7 +5623,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:404 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:407 msgid "Duplicate Part" msgstr "" @@ -5593,118 +5660,128 @@ msgstr "" msgid "Refresh" msgstr "" -#: part/templates/part/detail.html:59 +#: part/templates/part/detail.html:65 +msgid "Add stocktake information" +msgstr "" + +#: part/templates/part/detail.html:66 part/templates/part/part_sidebar.html:49 +#: stock/admin.py:107 templates/js/translated/stock.js:1905 +msgid "Stocktake" +msgstr "" + +#: part/templates/part/detail.html:82 msgid "Part Test Templates" msgstr "" -#: part/templates/part/detail.html:64 +#: part/templates/part/detail.html:87 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:144 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:141 +#: part/templates/part/detail.html:164 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:156 +#: part/templates/part/detail.html:179 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:160 +#: part/templates/part/detail.html:183 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:161 +#: part/templates/part/detail.html:184 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:188 +#: part/templates/part/detail.html:211 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:225 part/templates/part/part_sidebar.html:52 +#: part/templates/part/detail.html:248 part/templates/part/part_sidebar.html:57 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:229 part/templates/part/detail.html:230 +#: part/templates/part/detail.html:252 part/templates/part/detail.html:253 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:250 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:273 part/templates/part/part_sidebar.html:17 +#: report/templates/report/inventree_bill_of_materials_report.html:100 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:255 +#: part/templates/part/detail.html:278 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:259 templates/js/translated/bom.js:309 +#: part/templates/part/detail.html:282 templates/js/translated/bom.js:309 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:261 +#: part/templates/part/detail.html:284 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:271 +#: part/templates/part/detail.html:294 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:272 templates/js/translated/part.js:276 +#: part/templates/part/detail.html:295 templates/js/translated/part.js:279 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:273 +#: part/templates/part/detail.html:296 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:278 part/templates/part/detail.html:279 +#: part/templates/part/detail.html:301 part/templates/part/detail.html:302 #: templates/js/translated/bom.js:1268 templates/js/translated/bom.js:1269 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:292 +#: part/templates/part/detail.html:315 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:310 +#: part/templates/part/detail.html:333 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:337 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:360 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:353 +#: part/templates/part/detail.html:376 msgid "Part Suppliers" msgstr "" -#: part/templates/part/detail.html:383 +#: part/templates/part/detail.html:406 msgid "Part Manufacturers" msgstr "" -#: part/templates/part/detail.html:399 +#: part/templates/part/detail.html:422 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:696 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:704 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:796 msgid "Add Test Result Template" msgstr "" #: part/templates/part/import_wizard/ajax_part_upload.html:29 #: part/templates/part/import_wizard/part_upload.html:14 -msgid "Unsuffitient privileges." +msgid "Insufficient privileges." msgstr "" #: part/templates/part/import_wizard/part_upload.html:8 @@ -5715,6 +5792,34 @@ msgstr "" msgid "Import Parts from File" msgstr "" +#: part/templates/part/import_wizard/part_upload.html:31 +msgid "Requirements for part import" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "The part import file must contain the required named columns as provided in the " +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:89 +msgid "Download Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:92 +#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 +#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 +msgid "Format" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:93 +#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 +#: templates/js/translated/order.js:999 +msgid "Select file format" +msgstr "" + #: part/templates/part/part_app_base.html:12 msgid "Part List" msgstr "" @@ -5804,12 +5909,12 @@ msgstr "" #: templates/js/translated/company.js:660 #: templates/js/translated/company.js:921 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:677 templates/js/translated/part.js:755 +#: templates/js/translated/part.js:680 templates/js/translated/part.js:1026 msgid "Inactive" msgstr "" #: part/templates/part/part_base.html:165 -#: part/templates/part/part_base.html:666 +#: part/templates/part/part_base.html:680 msgid "Show Part Details" msgstr "" @@ -5837,38 +5942,38 @@ msgid "Minimum stock level" msgstr "" #: part/templates/part/part_base.html:330 templates/js/translated/bom.js:1032 -#: templates/js/translated/part.js:798 templates/js/translated/part.js:1604 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:1875 #: templates/js/translated/pricing.js:124 #: templates/js/translated/pricing.js:762 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:345 +#: part/templates/part/part_base.html:359 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:349 +#: part/templates/part/part_base.html:363 #: stock/templates/stock/item_base.html:331 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:449 +#: part/templates/part/part_base.html:463 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:495 +#: part/templates/part/part_base.html:509 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:512 +#: part/templates/part/part_base.html:526 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:564 +#: part/templates/part/part_base.html:578 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:660 +#: part/templates/part/part_base.html:674 msgid "Hide Part Details" msgstr "" @@ -5920,15 +6025,6 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" -#: part/templates/part/part_scheduling.html:13 -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:63 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:2043 templates/js/translated/pricing.js:537 -#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2516 -msgid "Date" -msgstr "" - #: part/templates/part/part_scheduling.html:14 msgid "Scheduled Quantity" msgstr "" @@ -5941,7 +6037,7 @@ msgstr "" msgid "Scheduling" msgstr "" -#: part/templates/part/part_sidebar.html:48 +#: part/templates/part/part_sidebar.html:53 msgid "Test Templates" msgstr "" @@ -5960,7 +6056,7 @@ msgstr "" #: part/templates/part/prices.html:25 stock/admin.py:106 #: stock/templates/stock/item_base.html:440 #: templates/js/translated/company.js:1039 -#: templates/js/translated/stock.js:1940 +#: templates/js/translated/stock.js:1935 msgid "Last Updated" msgstr "" @@ -6023,8 +6119,8 @@ msgstr "" msgid "Add Sell Price Break" msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:639 -#: templates/js/translated/part.js:1373 templates/js/translated/part.js:1375 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:1644 templates/js/translated/part.js:1646 msgid "No Stock" msgstr "" @@ -6087,27 +6183,32 @@ msgstr "" msgid "{title} v{version}" msgstr "" -#: part/views.py:109 +#: part/views.py:111 msgid "Match References" msgstr "" -#: part/views.py:354 +#: part/views.py:239 +#, python-brace-format +msgid "Can't import part {name} because there is no category assigned" +msgstr "" + +#: part/views.py:378 msgid "Part QR Code" msgstr "" -#: part/views.py:372 +#: part/views.py:396 msgid "Select Part Image" msgstr "" -#: part/views.py:398 +#: part/views.py:422 msgid "Updated part image" msgstr "" -#: part/views.py:401 +#: part/views.py:425 msgid "Part image not found" msgstr "" -#: part/views.py:493 +#: part/views.py:517 msgid "Part Pricing" msgstr "" @@ -6156,28 +6257,48 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:29 -#: plugin/builtin/integration/core_notifications.py:31 +#: plugin/builtin/integration/core_notifications.py:33 msgid "InvenTree contributors" msgstr "" -#: plugin/builtin/integration/core_notifications.py:30 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:32 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notificaton methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:37 -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:80 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:38 -#: plugin/builtin/integration/core_notifications.py:57 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:81 msgid "Allow sending of emails for event notifications" msgstr "" +#: plugin/builtin/integration/core_notifications.py:45 +msgid "Enable slack notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:46 +msgid "Allow sending of slack channel messages for event notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:51 +msgid "Slack incoming webhook url" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:52 +msgid "URL that is used to send messages to a slack channel" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:162 +msgid "Open link" +msgstr "" + #: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" @@ -6409,6 +6530,10 @@ msgstr "" msgid "Asset file description" msgstr "" +#: report/templates/report/inventree_bill_of_materials_report.html:133 +msgid "Materials needed" +msgstr "" + #: report/templates/report/inventree_build_order_base.html:146 msgid "Required For" msgstr "" @@ -6427,7 +6552,7 @@ msgstr "" #: templates/js/translated/build.js:1244 templates/js/translated/build.js:1745 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:121 templates/js/translated/order.js:3611 -#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:522 +#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:521 msgid "Serial Number" msgstr "" @@ -6459,8 +6584,9 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: stock/admin.py:87 templates/js/translated/stock.js:642 -#: templates/js/translated/stock.js:812 templates/js/translated/stock.js:2765 +#: stock/admin.py:87 templates/js/translated/part.js:749 +#: templates/js/translated/stock.js:641 templates/js/translated/stock.js:811 +#: templates/js/translated/stock.js:2760 msgid "Serial" msgstr "" @@ -6515,13 +6641,9 @@ msgstr "" msgid "Purchase Order ID" msgstr "" -#: stock/admin.py:107 templates/js/translated/stock.js:1910 -msgid "Stocktake" -msgstr "" - #: stock/admin.py:108 stock/models.py:764 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/stock.js:1924 +#: templates/js/translated/stock.js:1919 msgid "Expiry Date" msgstr "" @@ -6936,7 +7058,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2912 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2907 msgid "Install Stock Item" msgstr "" @@ -6944,7 +7066,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1561 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1560 msgid "Add Test Result" msgstr "" @@ -7117,10 +7239,6 @@ msgstr "" msgid "Stale" msgstr "" -#: stock/templates/stock/item_base.html:445 -msgid "Last Stocktake" -msgstr "" - #: stock/templates/stock/item_base.html:449 msgid "No stocktake performed" msgstr "" @@ -7394,7 +7512,8 @@ msgstr "" #: templates/InvenTree/notifications/notifications.html:10 #: templates/InvenTree/notifications/sidebar.html:5 -#: templates/InvenTree/settings/sidebar.html:17 templates/notifications.html:5 +#: templates/InvenTree/settings/sidebar.html:17 +#: templates/InvenTree/settings/sidebar.html:35 templates/notifications.html:5 msgid "Notifications" msgstr "" @@ -7475,6 +7594,14 @@ msgstr "" msgid "Open in new tab" msgstr "" +#: templates/InvenTree/settings/notifications.html:9 +msgid "Global Notification Settings" +msgstr "" + +#: templates/InvenTree/settings/notifications.html:18 +msgid "Slug" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -7492,7 +7619,7 @@ msgid "Part Parameter Templates" msgstr "" #: templates/InvenTree/settings/plugin.html:10 -#: templates/InvenTree/settings/sidebar.html:55 +#: templates/InvenTree/settings/sidebar.html:57 msgid "Plugin Settings" msgstr "" @@ -7501,7 +7628,7 @@ msgid "Changing the settings below require you to immediately restart the server msgstr "" #: templates/InvenTree/settings/plugin.html:38 -#: templates/InvenTree/settings/sidebar.html:57 +#: templates/InvenTree/settings/sidebar.html:59 msgid "Plugins" msgstr "" @@ -7669,67 +7796,67 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:117 +#: templates/InvenTree/settings/settings.html:118 msgid "Edit Plugin Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:119 +#: templates/InvenTree/settings/settings.html:120 msgid "Edit Notification Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:122 +#: templates/InvenTree/settings/settings.html:123 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:124 +#: templates/InvenTree/settings/settings.html:125 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:214 +#: templates/InvenTree/settings/settings.html:215 msgid "No category parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:236 -#: templates/InvenTree/settings/settings.html:361 -msgid "Edit Template" -msgstr "" - #: templates/InvenTree/settings/settings.html:237 #: templates/InvenTree/settings/settings.html:362 +msgid "Edit Template" +msgstr "" + +#: templates/InvenTree/settings/settings.html:238 +#: templates/InvenTree/settings/settings.html:363 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:277 +#: templates/InvenTree/settings/settings.html:278 msgid "Create Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:322 +#: templates/InvenTree/settings/settings.html:323 msgid "Delete Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:334 +#: templates/InvenTree/settings/settings.html:335 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:338 +#: templates/InvenTree/settings/settings.html:339 #: templates/js/translated/news.js:29 #: templates/js/translated/notification.js:36 msgid "ID" msgstr "" -#: templates/InvenTree/settings/settings.html:380 +#: templates/InvenTree/settings/settings.html:381 msgid "Create Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:399 +#: templates/InvenTree/settings/settings.html:400 msgid "Edit Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:413 +#: templates/InvenTree/settings/settings.html:414 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/InvenTree/settings/settings.html:421 +#: templates/InvenTree/settings/settings.html:422 msgid "Delete Part Parameter Template" msgstr "" @@ -7758,12 +7885,12 @@ msgid "Search Settings" msgstr "" #: templates/InvenTree/settings/sidebar.html:19 -#: templates/InvenTree/settings/sidebar.html:37 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Label Printing" msgstr "" #: templates/InvenTree/settings/sidebar.html:21 -#: templates/InvenTree/settings/sidebar.html:39 +#: templates/InvenTree/settings/sidebar.html:41 msgid "Reporting" msgstr "" @@ -7775,7 +7902,7 @@ msgstr "" msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:43 +#: templates/InvenTree/settings/sidebar.html:45 msgid "Categories" msgstr "" @@ -7945,64 +8072,64 @@ msgstr "" msgid "Do you really want to remove the selected email address?" msgstr "" -#: templates/InvenTree/settings/user_display.html:28 +#: templates/InvenTree/settings/user_display.html:29 msgid "Theme Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:38 +#: templates/InvenTree/settings/user_display.html:39 msgid "Select theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:49 +#: templates/InvenTree/settings/user_display.html:50 msgid "Set Theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:57 +#: templates/InvenTree/settings/user_display.html:58 msgid "Language Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:66 +#: templates/InvenTree/settings/user_display.html:67 msgid "Select language" msgstr "" -#: templates/InvenTree/settings/user_display.html:82 +#: templates/InvenTree/settings/user_display.html:83 #, python-format msgid "%(lang_translated)s%% translated" msgstr "" -#: templates/InvenTree/settings/user_display.html:84 +#: templates/InvenTree/settings/user_display.html:85 msgid "No translations available" msgstr "" -#: templates/InvenTree/settings/user_display.html:91 +#: templates/InvenTree/settings/user_display.html:92 msgid "Set Language" msgstr "" -#: templates/InvenTree/settings/user_display.html:94 +#: templates/InvenTree/settings/user_display.html:95 msgid "Some languages are not complete" msgstr "" -#: templates/InvenTree/settings/user_display.html:96 +#: templates/InvenTree/settings/user_display.html:97 msgid "Show only sufficent" msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "and hidden." msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "Show them too" msgstr "" -#: templates/InvenTree/settings/user_display.html:105 +#: templates/InvenTree/settings/user_display.html:106 msgid "Help the translation efforts!" msgstr "" -#: templates/InvenTree/settings/user_display.html:106 +#: templates/InvenTree/settings/user_display.html:107 msgid "Native language translation of the web application is community contributed via crowdin. Contributions are welcomed and encouraged." msgstr "" -#: templates/InvenTree/settings/user_display.html:107 +#: templates/InvenTree/settings/user_display.html:108 msgid "InvenTree Translation Project" msgstr "" @@ -8080,7 +8207,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:646 +#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:649 msgid "Confirm" msgstr "Konfirmasi" @@ -8313,7 +8440,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 -#: templates/js/translated/part.js:2445 +#: templates/js/translated/part.js:2726 msgid "Minimum Quantity" msgstr "" @@ -8466,7 +8593,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1089 +#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1088 msgid "Remove stock item" msgstr "" @@ -8548,16 +8675,6 @@ msgstr "" msgid "Download BOM Template" msgstr "" -#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 -#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 -msgid "Format" -msgstr "" - -#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 -#: templates/js/translated/order.js:999 -msgid "Select file format" -msgstr "" - #: templates/js/translated/bom.js:320 msgid "Multi Level BOM" msgstr "" @@ -8688,7 +8805,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:1145 templates/js/translated/build.js:1923 -#: templates/js/translated/part.js:790 templates/js/translated/part.js:1572 +#: templates/js/translated/part.js:1061 templates/js/translated/part.js:1843 msgid "Includes variant stock" msgstr "" @@ -8773,13 +8890,13 @@ msgstr "" msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:317 templates/js/translated/stock.js:95 -#: templates/js/translated/stock.js:237 +#: templates/js/translated/build.js:317 templates/js/translated/stock.js:94 +#: templates/js/translated/stock.js:236 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:319 templates/js/translated/stock.js:97 -#: templates/js/translated/stock.js:239 +#: templates/js/translated/build.js:319 templates/js/translated/stock.js:96 +#: templates/js/translated/stock.js:238 msgid "Latest serial number" msgstr "" @@ -8987,9 +9104,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1466 -#: templates/js/translated/part.js:2003 templates/js/translated/stock.js:1725 -#: templates/js/translated/stock.js:2428 +#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1737 +#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1724 +#: templates/js/translated/stock.js:2423 msgid "Select" msgstr "" @@ -9001,7 +9118,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2695 +#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2690 msgid "No user information" msgstr "" @@ -9074,34 +9191,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:652 -#: templates/js/translated/company.js:913 templates/js/translated/part.js:661 -#: templates/js/translated/part.js:747 +#: templates/js/translated/company.js:913 templates/js/translated/part.js:664 +#: templates/js/translated/part.js:1018 msgid "Template part" msgstr "" #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:917 templates/js/translated/part.js:665 -#: templates/js/translated/part.js:751 +#: templates/js/translated/company.js:917 templates/js/translated/part.js:668 +#: templates/js/translated/part.js:1022 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:784 templates/js/translated/part.js:870 +#: templates/js/translated/company.js:784 templates/js/translated/part.js:1141 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:821 templates/js/translated/part.js:912 +#: templates/js/translated/company.js:821 templates/js/translated/part.js:1183 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:822 templates/js/translated/part.js:913 +#: templates/js/translated/company.js:822 templates/js/translated/part.js:1184 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:841 templates/js/translated/part.js:930 +#: templates/js/translated/company.js:841 templates/js/translated/part.js:1201 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:852 templates/js/translated/part.js:942 +#: templates/js/translated/company.js:852 templates/js/translated/part.js:1213 msgid "Delete Parameter" msgstr "" @@ -9181,61 +9298,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:369 templates/js/translated/forms.js:384 -#: templates/js/translated/forms.js:398 templates/js/translated/forms.js:412 +#: templates/js/translated/forms.js:372 templates/js/translated/forms.js:387 +#: templates/js/translated/forms.js:401 templates/js/translated/forms.js:415 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:371 +#: templates/js/translated/forms.js:374 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:386 +#: templates/js/translated/forms.js:389 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:400 +#: templates/js/translated/forms.js:403 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:414 +#: templates/js/translated/forms.js:417 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:672 +#: templates/js/translated/forms.js:675 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:773 +#: templates/js/translated/forms.js:776 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1266 templates/modals.html:19 +#: templates/js/translated/forms.js:1269 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1703 +#: templates/js/translated/forms.js:1706 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1919 templates/search.html:29 +#: templates/js/translated/forms.js:1922 templates/search.html:29 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2172 +#: templates/js/translated/forms.js:2175 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:2640 +#: templates/js/translated/forms.js:2643 msgid "Select Columns" msgstr "" @@ -9256,7 +9373,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1113 +#: templates/js/translated/stock.js:1112 msgid "Select Stock Items" msgstr "" @@ -9590,7 +9707,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2184 +#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2179 msgid "Stock Status" msgstr "" @@ -9614,7 +9731,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1982 templates/js/translated/part.js:983 +#: templates/js/translated/order.js:1982 templates/js/translated/part.js:1254 msgid "No purchase orders found" msgstr "" @@ -9647,8 +9764,8 @@ msgstr "" msgid "Total" msgstr "" -#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1085 -#: templates/js/translated/part.js:1137 +#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1356 +#: templates/js/translated/part.js:1408 msgid "Total Quantity" msgstr "" @@ -9666,11 +9783,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2388 templates/js/translated/order.js:3900 -#: templates/js/translated/part.js:1121 +#: templates/js/translated/part.js:1392 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1166 +#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1437 msgid "Receive line item" msgstr "" @@ -9791,7 +9908,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3623 templates/js/translated/order.js:3712 -#: templates/js/translated/stock.js:1641 +#: templates/js/translated/stock.js:1640 msgid "Shipped to customer" msgstr "" @@ -9835,334 +9952,358 @@ msgstr "" msgid "No matching lines" msgstr "" -#: templates/js/translated/part.js:52 +#: templates/js/translated/part.js:55 msgid "Part Attributes" msgstr "" -#: templates/js/translated/part.js:56 +#: templates/js/translated/part.js:59 msgid "Part Creation Options" msgstr "" -#: templates/js/translated/part.js:60 +#: templates/js/translated/part.js:63 msgid "Part Duplication Options" msgstr "" -#: templates/js/translated/part.js:64 +#: templates/js/translated/part.js:67 msgid "Supplier Options" msgstr "" -#: templates/js/translated/part.js:78 +#: templates/js/translated/part.js:81 msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:168 +#: templates/js/translated/part.js:171 msgid "Create Initial Stock" msgstr "" -#: templates/js/translated/part.js:169 +#: templates/js/translated/part.js:172 msgid "Create an initial stock item for this part" msgstr "" -#: templates/js/translated/part.js:176 +#: templates/js/translated/part.js:179 msgid "Initial Stock Quantity" msgstr "" -#: templates/js/translated/part.js:177 +#: templates/js/translated/part.js:180 msgid "Specify initial stock quantity for this part" msgstr "" -#: templates/js/translated/part.js:184 +#: templates/js/translated/part.js:187 msgid "Select destination stock location" msgstr "" -#: templates/js/translated/part.js:202 +#: templates/js/translated/part.js:205 msgid "Copy Category Parameters" msgstr "" -#: templates/js/translated/part.js:203 +#: templates/js/translated/part.js:206 msgid "Copy parameter templates from selected part category" msgstr "" -#: templates/js/translated/part.js:211 +#: templates/js/translated/part.js:214 msgid "Add Supplier Data" msgstr "" -#: templates/js/translated/part.js:212 +#: templates/js/translated/part.js:215 msgid "Create initial supplier data for this part" msgstr "" -#: templates/js/translated/part.js:268 +#: templates/js/translated/part.js:271 msgid "Copy Image" msgstr "" -#: templates/js/translated/part.js:269 +#: templates/js/translated/part.js:272 msgid "Copy image from original part" msgstr "" -#: templates/js/translated/part.js:277 +#: templates/js/translated/part.js:280 msgid "Copy bill of materials from original part" msgstr "" -#: templates/js/translated/part.js:284 +#: templates/js/translated/part.js:287 msgid "Copy Parameters" msgstr "" -#: templates/js/translated/part.js:285 +#: templates/js/translated/part.js:288 msgid "Copy parameter data from original part" msgstr "" -#: templates/js/translated/part.js:298 +#: templates/js/translated/part.js:301 msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:313 templates/js/translated/stock.js:122 +#: templates/js/translated/part.js:316 templates/js/translated/stock.js:121 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:329 +#: templates/js/translated/part.js:332 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:342 +#: templates/js/translated/part.js:345 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:347 +#: templates/js/translated/part.js:350 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:359 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:360 +#: templates/js/translated/part.js:363 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:368 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:394 +#: templates/js/translated/part.js:397 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:396 +#: templates/js/translated/part.js:399 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:407 +#: templates/js/translated/part.js:410 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:459 +#: templates/js/translated/part.js:462 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:460 +#: templates/js/translated/part.js:463 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:477 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:476 +#: templates/js/translated/part.js:479 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:477 +#: templates/js/translated/part.js:480 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:478 +#: templates/js/translated/part.js:481 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:485 +#: templates/js/translated/part.js:488 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:521 +#: templates/js/translated/part.js:524 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:523 +#: templates/js/translated/part.js:526 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:531 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:530 +#: templates/js/translated/part.js:533 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:547 +#: templates/js/translated/part.js:550 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:560 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:560 +#: templates/js/translated/part.js:563 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:585 +#: templates/js/translated/part.js:588 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1554 +#: templates/js/translated/part.js:612 templates/js/translated/part.js:1825 #: templates/js/translated/table_filters.js:488 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:622 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:653 templates/js/translated/part.js:739 +#: templates/js/translated/part.js:656 templates/js/translated/part.js:1010 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:657 templates/js/translated/part.js:743 +#: templates/js/translated/part.js:660 templates/js/translated/part.js:1014 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:669 +#: templates/js/translated/part.js:672 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:673 +#: templates/js/translated/part.js:676 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:815 +#: templates/js/translated/part.js:761 +msgid "Stock item has not been checked recently" +msgstr "" + +#: templates/js/translated/part.js:769 +msgid "Update item" +msgstr "" + +#: templates/js/translated/part.js:770 +msgid "Delete item" +msgstr "" + +#: templates/js/translated/part.js:871 +msgid "No stocktake information available" +msgstr "" + +#: templates/js/translated/part.js:910 templates/js/translated/part.js:933 +msgid "Edit Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:914 templates/js/translated/part.js:945 +msgid "Delete Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:1086 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1236 +#: templates/js/translated/part.js:1507 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1260 +#: templates/js/translated/part.js:1531 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1327 templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1598 templates/js/translated/part.js:1936 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1521 +#: templates/js/translated/part.js:1792 msgid "No category" msgstr "" -#: templates/js/translated/part.js:1552 +#: templates/js/translated/part.js:1823 msgid "No stock" msgstr "" -#: templates/js/translated/part.js:1576 +#: templates/js/translated/part.js:1847 msgid "Allocated to build orders" msgstr "" -#: templates/js/translated/part.js:1580 +#: templates/js/translated/part.js:1851 msgid "Allocated to sales orders" msgstr "" -#: templates/js/translated/part.js:1679 templates/js/translated/part.js:1922 -#: templates/js/translated/stock.js:2387 +#: templates/js/translated/part.js:1960 templates/js/translated/part.js:2203 +#: templates/js/translated/stock.js:2382 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1695 +#: templates/js/translated/part.js:1976 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1761 +#: templates/js/translated/part.js:2042 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1766 +#: templates/js/translated/part.js:2047 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1771 +#: templates/js/translated/part.js:2052 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1784 +#: templates/js/translated/part.js:2065 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1942 templates/js/translated/stock.js:2407 +#: templates/js/translated/part.js:2223 templates/js/translated/stock.js:2402 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2022 +#: templates/js/translated/part.js:2303 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2038 +#: templates/js/translated/part.js:2319 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2383 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2153 templates/js/translated/stock.js:1338 +#: templates/js/translated/part.js:2434 templates/js/translated/stock.js:1337 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2154 templates/js/translated/stock.js:1339 -#: templates/js/translated/stock.js:1599 +#: templates/js/translated/part.js:2435 templates/js/translated/stock.js:1338 +#: templates/js/translated/stock.js:1598 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2441 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2182 +#: templates/js/translated/part.js:2463 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2196 +#: templates/js/translated/part.js:2477 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2277 templates/js/translated/part.js:2278 +#: templates/js/translated/part.js:2558 templates/js/translated/part.js:2559 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2280 +#: templates/js/translated/part.js:2561 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:2286 +#: templates/js/translated/part.js:2567 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:2336 +#: templates/js/translated/part.js:2617 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2623 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:2438 +#: templates/js/translated/part.js:2719 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2454 +#: templates/js/translated/part.js:2735 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:2499 +#: templates/js/translated/part.js:2780 msgid "Minimum Stock Level" msgstr "" @@ -10290,388 +10431,388 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:74 +#: templates/js/translated/stock.js:73 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:104 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:114 +#: templates/js/translated/stock.js:113 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:148 +#: templates/js/translated/stock.js:147 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:163 +#: templates/js/translated/stock.js:162 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:177 +#: templates/js/translated/stock.js:176 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:184 +#: templates/js/translated/stock.js:183 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:193 +#: templates/js/translated/stock.js:192 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:197 +#: templates/js/translated/stock.js:196 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:201 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:256 +#: templates/js/translated/stock.js:255 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:298 +#: templates/js/translated/stock.js:297 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:304 +#: templates/js/translated/stock.js:303 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:368 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:389 +#: templates/js/translated/stock.js:388 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:405 +#: templates/js/translated/stock.js:404 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:410 +#: templates/js/translated/stock.js:409 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:431 +#: templates/js/translated/stock.js:430 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:481 +#: templates/js/translated/stock.js:480 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:494 +#: templates/js/translated/stock.js:493 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:519 +#: templates/js/translated/stock.js:518 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:523 templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:522 templates/js/translated/stock.js:523 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:540 +#: templates/js/translated/stock.js:539 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:560 +#: templates/js/translated/stock.js:559 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:568 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:692 +#: templates/js/translated/stock.js:691 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:693 +#: templates/js/translated/stock.js:692 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:770 +#: templates/js/translated/stock.js:769 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:771 +#: templates/js/translated/stock.js:770 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:773 +#: templates/js/translated/stock.js:772 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:774 +#: templates/js/translated/stock.js:773 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:863 +#: templates/js/translated/stock.js:862 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:864 +#: templates/js/translated/stock.js:863 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:958 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:959 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:966 +#: templates/js/translated/stock.js:965 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:967 +#: templates/js/translated/stock.js:966 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:971 +#: templates/js/translated/stock.js:970 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:972 +#: templates/js/translated/stock.js:971 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:976 +#: templates/js/translated/stock.js:975 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:977 users/models.py:220 +#: templates/js/translated/stock.js:976 users/models.py:221 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:981 +#: templates/js/translated/stock.js:980 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1114 +#: templates/js/translated/stock.js:1113 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1141 +#: templates/js/translated/stock.js:1140 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1277 +#: templates/js/translated/stock.js:1276 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1279 +#: templates/js/translated/stock.js:1278 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1284 +#: templates/js/translated/stock.js:1283 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1331 +#: templates/js/translated/stock.js:1330 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1334 +#: templates/js/translated/stock.js:1333 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1360 +#: templates/js/translated/stock.js:1359 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1417 +#: templates/js/translated/stock.js:1416 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1582 +#: templates/js/translated/stock.js:1581 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1604 +#: templates/js/translated/stock.js:1603 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1633 +#: templates/js/translated/stock.js:1632 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1637 +#: templates/js/translated/stock.js:1636 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1645 +#: templates/js/translated/stock.js:1644 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1651 +#: templates/js/translated/stock.js:1650 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1820 +#: templates/js/translated/stock.js:1815 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1825 +#: templates/js/translated/stock.js:1820 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1828 +#: templates/js/translated/stock.js:1823 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1831 +#: templates/js/translated/stock.js:1826 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1833 +#: templates/js/translated/stock.js:1828 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1835 +#: templates/js/translated/stock.js:1830 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1838 +#: templates/js/translated/stock.js:1833 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1837 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1844 +#: templates/js/translated/stock.js:1839 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1846 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1853 +#: templates/js/translated/stock.js:1848 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1855 +#: templates/js/translated/stock.js:1850 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1859 +#: templates/js/translated/stock.js:1854 #: templates/js/translated/table_filters.js:216 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1989 +#: templates/js/translated/stock.js:1984 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2026 +#: templates/js/translated/stock.js:2021 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2199 +#: templates/js/translated/stock.js:2194 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2213 +#: templates/js/translated/stock.js:2208 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2214 +#: templates/js/translated/stock.js:2209 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2446 +#: templates/js/translated/stock.js:2441 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2536 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2557 +#: templates/js/translated/stock.js:2552 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2579 +#: templates/js/translated/stock.js:2574 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2598 +#: templates/js/translated/stock.js:2593 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2617 +#: templates/js/translated/stock.js:2612 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2635 +#: templates/js/translated/stock.js:2630 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2658 +#: templates/js/translated/stock.js:2653 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2666 +#: templates/js/translated/stock.js:2661 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2737 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2793 templates/js/translated/stock.js:2829 +#: templates/js/translated/stock.js:2788 templates/js/translated/stock.js:2824 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2845 +#: templates/js/translated/stock.js:2840 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2866 +#: templates/js/translated/stock.js:2861 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2867 +#: templates/js/translated/stock.js:2862 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2869 +#: templates/js/translated/stock.js:2864 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2870 +#: templates/js/translated/stock.js:2865 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:2866 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2872 +#: templates/js/translated/stock.js:2867 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2885 +#: templates/js/translated/stock.js:2880 msgid "Select part to install" msgstr "" @@ -10696,7 +10837,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:92 -#: templates/js/translated/table_filters.js:516 +#: templates/js/translated/table_filters.js:520 msgid "Has Pricing" msgstr "" @@ -10912,6 +11053,10 @@ msgstr "" msgid "Purchasable" msgstr "" +#: templates/js/translated/table_filters.js:504 +msgid "Has stocktake entries" +msgstr "" + #: templates/js/translated/tables.js:70 msgid "Display calendar view" msgstr "" @@ -11206,35 +11351,35 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:207 +#: users/models.py:208 msgid "Permission set" msgstr "" -#: users/models.py:215 +#: users/models.py:216 msgid "Group" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "View" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "Permission to view items" msgstr "" -#: users/models.py:220 +#: users/models.py:221 msgid "Permission to add items" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Change" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Permissions to edit items" msgstr "" -#: users/models.py:224 +#: users/models.py:225 msgid "Permission to delete items" msgstr "" diff --git a/InvenTree/locale/it/LC_MESSAGES/django.po b/InvenTree/locale/it/LC_MESSAGES/django.po index c656bb574f..3c7469a2ba 100644 --- a/InvenTree/locale/it/LC_MESSAGES/django.po +++ b/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: 2022-12-30 20:46+0000\n" -"PO-Revision-Date: 2022-12-31 11:29\n" +"POT-Creation-Date: 2023-01-01 11:05+0000\n" +"PO-Revision-Date: 2023-01-01 11:26\n" "Last-Translator: \n" "Language-Team: Italian\n" "Language: it_IT\n" @@ -34,7 +34,7 @@ msgstr "Inserisci la data" #: company/templates/company/sidebar.html:25 order/models.py:943 #: order/templates/order/po_sidebar.html:11 #: order/templates/order/so_sidebar.html:17 part/admin.py:27 -#: part/templates/part/part_sidebar.html:57 +#: part/models.py:2932 part/templates/part/part_sidebar.html:62 #: report/templates/report/inventree_build_order_base.html:172 #: stock/admin.py:103 stock/models.py:2061 stock/models.py:2169 #: stock/serializers.py:321 stock/serializers.py:454 stock/serializers.py:535 @@ -44,8 +44,8 @@ msgstr "Inserisci la data" #: templates/js/translated/company.js:1023 #: templates/js/translated/order.js:2435 templates/js/translated/order.js:2569 #: templates/js/translated/order.js:3067 templates/js/translated/order.js:4004 -#: templates/js/translated/order.js:4385 templates/js/translated/stock.js:1413 -#: templates/js/translated/stock.js:2020 +#: templates/js/translated/order.js:4385 templates/js/translated/part.js:882 +#: templates/js/translated/stock.js:1412 templates/js/translated/stock.js:2015 msgid "Notes" msgstr "Note" @@ -204,18 +204,18 @@ msgstr "Allegato" msgid "Select file to attach" msgstr "Seleziona file da allegare" -#: InvenTree/models.py:412 common/models.py:2366 company/models.py:129 +#: InvenTree/models.py:412 common/models.py:2373 company/models.py:129 #: company/models.py:281 company/models.py:516 order/models.py:85 -#: order/models.py:1282 part/admin.py:25 part/models.py:865 +#: order/models.py:1282 part/admin.py:25 part/models.py:866 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: stock/admin.py:102 templates/js/translated/company.js:692 #: templates/js/translated/company.js:1012 -#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1615 +#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1886 msgid "Link" msgstr "Collegamento" -#: InvenTree/models.py:413 build/models.py:290 part/models.py:866 +#: InvenTree/models.py:413 build/models.py:290 part/models.py:867 #: stock/models.py:716 msgid "Link to external URL" msgstr "Link a URL esterno" @@ -229,12 +229,13 @@ msgstr "Commento" msgid "File comment" msgstr "Commento del file" -#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1810 -#: common/models.py:1811 common/models.py:2034 common/models.py:2035 -#: common/models.py:2296 common/models.py:2297 part/models.py:2948 -#: part/models.py:2968 plugin/models.py:264 plugin/models.py:265 +#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1817 +#: common/models.py:1818 common/models.py:2041 common/models.py:2042 +#: common/models.py:2303 common/models.py:2304 part/models.py:2940 +#: part/models.py:3026 part/models.py:3046 plugin/models.py:264 +#: plugin/models.py:265 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2689 +#: templates/js/translated/stock.js:2684 msgid "User" msgstr "Utente" @@ -271,19 +272,20 @@ msgstr "Errore nella rinominazione del file" msgid "Invalid choice" msgstr "Scelta non valida" -#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2020 -#: company/models.py:363 label/models.py:101 part/models.py:809 -#: part/models.py:3123 plugin/models.py:94 report/models.py:152 +#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2027 +#: company/models.py:363 label/models.py:101 part/models.py:810 +#: part/models.py:3201 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 +#: templates/InvenTree/settings/notifications.html:17 #: templates/InvenTree/settings/plugin.html:60 #: templates/InvenTree/settings/plugin.html:104 #: templates/InvenTree/settings/plugin_settings.html:23 -#: templates/InvenTree/settings/settings.html:344 +#: templates/InvenTree/settings/settings.html:345 #: templates/js/translated/company.js:581 #: templates/js/translated/company.js:794 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:711 templates/js/translated/part.js:880 -#: templates/js/translated/part.js:2010 templates/js/translated/stock.js:2434 +#: templates/js/translated/part.js:982 templates/js/translated/part.js:1151 +#: templates/js/translated/part.js:2291 templates/js/translated/stock.js:2429 msgid "Name" msgstr "Nome" @@ -292,24 +294,25 @@ msgstr "Nome" #: company/models.py:522 company/templates/company/company_base.html:72 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:108 label/models.py:108 -#: order/models.py:83 part/admin.py:141 part/admin.py:222 part/models.py:832 -#: part/models.py:3132 part/templates/part/category.html:75 +#: order/models.py:83 part/admin.py:174 part/admin.py:255 part/models.py:833 +#: part/models.py:3210 part/templates/part/category.html:75 #: part/templates/part/part_base.html:172 #: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/admin.py:25 stock/templates/stock/location.html:117 +#: templates/InvenTree/settings/notifications.html:19 #: templates/InvenTree/settings/plugin_settings.html:28 -#: templates/InvenTree/settings/settings.html:355 +#: templates/InvenTree/settings/settings.html:356 #: templates/js/translated/bom.js:592 templates/js/translated/bom.js:895 #: templates/js/translated/build.js:2596 templates/js/translated/company.js:445 #: templates/js/translated/company.js:703 #: templates/js/translated/company.js:987 templates/js/translated/order.js:2030 #: templates/js/translated/order.js:2267 templates/js/translated/order.js:2845 -#: templates/js/translated/part.js:773 templates/js/translated/part.js:1223 -#: templates/js/translated/part.js:1497 templates/js/translated/part.js:2046 -#: templates/js/translated/part.js:2121 templates/js/translated/stock.js:1787 -#: templates/js/translated/stock.js:2466 templates/js/translated/stock.js:2526 +#: templates/js/translated/part.js:1044 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1768 templates/js/translated/part.js:2327 +#: templates/js/translated/part.js:2402 templates/js/translated/stock.js:1782 +#: templates/js/translated/stock.js:2461 templates/js/translated/stock.js:2521 msgid "Description" msgstr "Descrizione" @@ -322,7 +325,7 @@ msgid "parent" msgstr "genitore" #: InvenTree/models.py:580 InvenTree/models.py:581 -#: templates/js/translated/part.js:2055 templates/js/translated/stock.js:2475 +#: templates/js/translated/part.js:2336 templates/js/translated/stock.js:2470 msgid "Path" msgstr "Percorso" @@ -354,7 +357,7 @@ msgstr "Errore del server" msgid "An error has been logged by the server." msgstr "Un errore è stato loggato dal server." -#: InvenTree/serializers.py:58 part/models.py:3468 +#: InvenTree/serializers.py:58 part/models.py:3546 msgid "Must be a valid number" msgstr "Deve essere un numero valido" @@ -421,107 +424,107 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:639 +#: InvenTree/settings.py:642 msgid "Czech" msgstr "Ceco" -#: InvenTree/settings.py:640 +#: InvenTree/settings.py:643 msgid "Danish" msgstr "" -#: InvenTree/settings.py:641 +#: InvenTree/settings.py:644 msgid "German" msgstr "Tedesco" -#: InvenTree/settings.py:642 +#: InvenTree/settings.py:645 msgid "Greek" msgstr "Greco" -#: InvenTree/settings.py:643 +#: InvenTree/settings.py:646 msgid "English" msgstr "Inglese" -#: InvenTree/settings.py:644 +#: InvenTree/settings.py:647 msgid "Spanish" msgstr "Spagnolo" -#: InvenTree/settings.py:645 +#: InvenTree/settings.py:648 msgid "Spanish (Mexican)" msgstr "Spagnolo (Messicano)" -#: InvenTree/settings.py:646 +#: InvenTree/settings.py:649 msgid "Farsi / Persian" msgstr "Farsi / Persiano" -#: InvenTree/settings.py:647 +#: InvenTree/settings.py:650 msgid "French" msgstr "Francese" -#: InvenTree/settings.py:648 +#: InvenTree/settings.py:651 msgid "Hebrew" msgstr "Ebraico" -#: InvenTree/settings.py:649 +#: InvenTree/settings.py:652 msgid "Hungarian" msgstr "Ungherese" -#: InvenTree/settings.py:650 +#: InvenTree/settings.py:653 msgid "Italian" msgstr "Italiano" -#: InvenTree/settings.py:651 +#: InvenTree/settings.py:654 msgid "Japanese" msgstr "Giapponese" -#: InvenTree/settings.py:652 +#: InvenTree/settings.py:655 msgid "Korean" msgstr "Coreano" -#: InvenTree/settings.py:653 +#: InvenTree/settings.py:656 msgid "Dutch" msgstr "Olandese" -#: InvenTree/settings.py:654 +#: InvenTree/settings.py:657 msgid "Norwegian" msgstr "Norvegese" -#: InvenTree/settings.py:655 +#: InvenTree/settings.py:658 msgid "Polish" msgstr "Polacco" -#: InvenTree/settings.py:656 +#: InvenTree/settings.py:659 msgid "Portuguese" msgstr "Portoghese" -#: InvenTree/settings.py:657 +#: InvenTree/settings.py:660 msgid "Portuguese (Brazilian)" msgstr "Portoghese (Brasile)" -#: InvenTree/settings.py:658 +#: InvenTree/settings.py:661 msgid "Russian" msgstr "Russo" -#: InvenTree/settings.py:659 +#: InvenTree/settings.py:662 msgid "Slovenian" msgstr "" -#: InvenTree/settings.py:660 +#: InvenTree/settings.py:663 msgid "Swedish" msgstr "Svedese" -#: InvenTree/settings.py:661 +#: InvenTree/settings.py:664 msgid "Thai" msgstr "Thailandese" -#: InvenTree/settings.py:662 +#: InvenTree/settings.py:665 msgid "Turkish" msgstr "Turco" -#: InvenTree/settings.py:663 +#: InvenTree/settings.py:666 msgid "Vietnamese" msgstr "Vietnamita" -#: InvenTree/settings.py:664 +#: InvenTree/settings.py:667 msgid "Chinese" msgstr "Cinese" @@ -652,7 +655,7 @@ msgstr "Diviso dall'elemento genitore" msgid "Split child item" msgstr "Dividi elemento figlio" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2124 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2119 msgid "Merged stock items" msgstr "Elemento stock raggruppato" @@ -756,7 +759,7 @@ msgstr "Ordine di Produzione" #: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:141 -#: templates/InvenTree/settings/sidebar.html:47 +#: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:254 users/models.py:41 msgid "Build Orders" msgstr "Ordini di Produzione" @@ -766,8 +769,9 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:155 order/models.py:241 order/models.py:651 -#: order/models.py:941 part/admin.py:224 part/models.py:3378 +#: order/models.py:941 part/admin.py:257 part/models.py:3456 #: part/templates/part/upload_bom.html:54 +#: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 #: templates/js/translated/bom.js:729 templates/js/translated/bom.js:905 @@ -793,13 +797,15 @@ msgstr "" #: build/models.py:180 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:684 #: order/models.py:1038 order/models.py:1149 order/models.py:1150 -#: part/models.py:381 part/models.py:2781 part/models.py:2894 -#: part/models.py:2909 part/models.py:2928 part/models.py:2946 -#: part/models.py:3045 part/models.py:3166 part/models.py:3258 -#: part/models.py:3343 part/models.py:3659 part/serializers.py:853 -#: part/templates/part/part_app_base.html:8 +#: part/models.py:382 part/models.py:2799 part/models.py:2912 +#: part/models.py:2972 part/models.py:2987 part/models.py:3006 +#: part/models.py:3024 part/models.py:3123 part/models.py:3244 +#: part/models.py:3336 part/models.py:3421 part/models.py:3737 +#: part/serializers.py:894 part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 +#: report/templates/report/inventree_bill_of_materials_report.html:110 +#: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_base.html:109 #: report/templates/report/inventree_po_report.html:89 #: report/templates/report/inventree_so_report.html:90 stock/serializers.py:90 @@ -819,12 +825,12 @@ msgstr "" #: templates/js/translated/order.js:1172 templates/js/translated/order.js:1676 #: templates/js/translated/order.js:2252 templates/js/translated/order.js:3199 #: templates/js/translated/order.js:3595 templates/js/translated/order.js:3825 -#: templates/js/translated/part.js:1208 templates/js/translated/part.js:1280 -#: templates/js/translated/part.js:1474 templates/js/translated/pricing.js:102 -#: templates/js/translated/stock.js:618 templates/js/translated/stock.js:783 -#: templates/js/translated/stock.js:993 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2552 templates/js/translated/stock.js:2747 -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/part.js:1479 templates/js/translated/part.js:1551 +#: templates/js/translated/part.js:1745 templates/js/translated/pricing.js:102 +#: templates/js/translated/stock.js:617 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:992 templates/js/translated/stock.js:1738 +#: templates/js/translated/stock.js:2547 templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2879 msgid "Part" msgstr "Articolo" @@ -890,7 +896,7 @@ msgstr "Codice Lotto" msgid "Batch code for this build output" msgstr "" -#: build/models.py:252 order/models.py:87 part/models.py:1001 +#: build/models.py:252 order/models.py:87 part/models.py:1002 #: part/templates/part/part_base.html:318 templates/js/translated/order.js:2858 msgid "Creation Date" msgstr "Data di creazione" @@ -923,7 +929,7 @@ msgstr "" #: build/models.py:283 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:101 #: order/templates/order/order_base.html:185 -#: order/templates/order/sales_order_base.html:183 part/models.py:1005 +#: order/templates/order/sales_order_base.html:183 part/models.py:1006 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2658 templates/js/translated/order.js:2064 msgid "Responsible" @@ -936,7 +942,7 @@ msgstr "" #: build/models.py:289 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:188 -#: part/templates/part/part_base.html:376 stock/models.py:714 +#: part/templates/part/part_base.html:390 stock/models.py:714 #: stock/templates/stock/item_base.html:203 msgid "External Link" msgstr "Collegamento esterno" @@ -1011,8 +1017,8 @@ msgstr "" #: templates/js/translated/order.js:107 templates/js/translated/order.js:3200 #: templates/js/translated/order.js:3502 templates/js/translated/order.js:3507 #: templates/js/translated/order.js:3602 templates/js/translated/order.js:3694 -#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 -#: templates/js/translated/stock.js:2625 +#: templates/js/translated/part.js:803 templates/js/translated/stock.js:618 +#: templates/js/translated/stock.js:783 templates/js/translated/stock.js:2620 msgid "Stock Item" msgstr "Articoli in magazzino" @@ -1022,12 +1028,13 @@ msgstr "Origine giacenza articolo" #: build/models.py:1364 build/serializers.py:192 #: build/templates/build/build_base.html:85 -#: build/templates/build/detail.html:34 common/models.py:1842 +#: build/templates/build/detail.html:34 common/models.py:1849 #: order/models.py:934 order/models.py:1460 order/serializers.py:1206 -#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:223 -#: part/forms.py:40 part/models.py:3359 +#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:256 +#: part/forms.py:40 part/models.py:2919 part/models.py:3437 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 +#: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_base.html:113 #: report/templates/report/inventree_po_report.html:90 #: report/templates/report/inventree_so_report.html:91 @@ -1049,13 +1056,14 @@ msgstr "Origine giacenza articolo" #: templates/js/translated/order.js:3201 templates/js/translated/order.js:3521 #: templates/js/translated/order.js:3608 templates/js/translated/order.js:3700 #: templates/js/translated/order.js:3847 templates/js/translated/order.js:4338 -#: templates/js/translated/part.js:1078 templates/js/translated/part.js:2568 +#: templates/js/translated/part.js:805 templates/js/translated/part.js:876 +#: templates/js/translated/part.js:1349 templates/js/translated/part.js:2849 #: templates/js/translated/pricing.js:114 #: templates/js/translated/pricing.js:207 #: templates/js/translated/pricing.js:255 -#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:490 -#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:814 -#: templates/js/translated/stock.js:2674 templates/js/translated/stock.js:2759 +#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:489 +#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:813 +#: templates/js/translated/stock.js:2669 templates/js/translated/stock.js:2754 msgid "Quantity" msgstr "Quantità" @@ -1097,8 +1105,8 @@ msgid "Enter quantity for build output" msgstr "Inserisci la quantità per l'output di compilazione" #: build/serializers.py:207 build/serializers.py:683 order/models.py:327 -#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:645 -#: part/serializers.py:1016 stock/models.py:574 stock/models.py:1312 +#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:686 +#: part/serializers.py:1057 stock/models.py:574 stock/models.py:1312 #: stock/serializers.py:294 msgid "Quantity must be greater than zero" msgstr "La quantità deve essere maggiore di zero" @@ -1113,7 +1121,7 @@ msgstr "" #: build/serializers.py:231 order/serializers.py:463 order/serializers.py:1210 #: stock/serializers.py:303 templates/js/translated/order.js:1545 -#: templates/js/translated/stock.js:303 templates/js/translated/stock.js:491 +#: templates/js/translated/stock.js:302 templates/js/translated/stock.js:490 msgid "Serial Numbers" msgstr "Codice Seriale" @@ -1146,9 +1154,10 @@ msgstr "" #: templates/js/translated/build.js:1759 templates/js/translated/order.js:1572 #: templates/js/translated/order.js:3514 templates/js/translated/order.js:3619 #: templates/js/translated/order.js:3627 templates/js/translated/order.js:3708 -#: templates/js/translated/part.js:183 templates/js/translated/stock.js:620 -#: templates/js/translated/stock.js:785 templates/js/translated/stock.js:995 -#: templates/js/translated/stock.js:1895 templates/js/translated/stock.js:2566 +#: templates/js/translated/part.js:186 templates/js/translated/part.js:804 +#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 +#: templates/js/translated/stock.js:994 templates/js/translated/stock.js:1890 +#: templates/js/translated/stock.js:2561 msgid "Location" msgstr "Posizione" @@ -1162,8 +1171,8 @@ msgstr "Posizione per gli output di build completati" #: stock/templates/stock/item_base.html:421 #: templates/js/translated/barcode.js:237 templates/js/translated/build.js:2630 #: templates/js/translated/order.js:1681 templates/js/translated/order.js:2034 -#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1870 -#: templates/js/translated/stock.js:2643 templates/js/translated/stock.js:2775 +#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:2638 templates/js/translated/stock.js:2770 msgid "Status" msgstr "Stato" @@ -1239,8 +1248,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:595 build/serializers.py:640 part/models.py:3495 -#: part/models.py:3651 +#: build/serializers.py:595 build/serializers.py:640 part/models.py:3573 +#: part/models.py:3729 msgid "BOM Item" msgstr "Distinta base (Bom)" @@ -1406,7 +1415,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2670 templates/js/translated/order.js:2051 #: templates/js/translated/order.js:2382 templates/js/translated/order.js:2866 -#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1093 +#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1364 msgid "Target Date" msgstr "Data scadenza" @@ -1484,8 +1493,8 @@ msgstr "" #: stock/templates/stock/item_base.html:168 #: templates/js/translated/build.js:1250 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:1884 -#: templates/js/translated/stock.js:2782 +#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:1879 +#: templates/js/translated/stock.js:2777 #: templates/js/translated/table_filters.js:179 #: templates/js/translated/table_filters.js:270 msgid "Batch" @@ -1617,8 +1626,8 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:86 #: order/templates/order/sales_order_detail.html:140 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:210 -#: part/templates/part/part_sidebar.html:55 stock/templates/stock/item.html:117 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:233 +#: part/templates/part/part_sidebar.html:60 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" msgstr "Allegati" @@ -1635,7 +1644,7 @@ msgstr "Assegnazione Completa" msgid "All untracked stock items have been allocated" msgstr "Tutte le giacenze non tracciate sono state assegnate" -#: build/templates/build/index.html:18 part/templates/part/detail.html:316 +#: build/templates/build/index.html:18 part/templates/part/detail.html:339 msgid "New Build Order" msgstr "" @@ -1928,9 +1937,9 @@ msgstr "Copia Template Parametri Categoria" msgid "Copy category parameter templates when creating a part" msgstr "Copia i modelli dei parametri categoria quando si crea un articolo" -#: common/models.py:1014 part/admin.py:41 part/models.py:3168 +#: common/models.py:1014 part/admin.py:41 part/models.py:3246 #: report/models.py:158 templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:504 +#: templates/js/translated/table_filters.js:508 msgid "Template" msgstr "" @@ -1938,7 +1947,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "Gli articoli sono modelli per impostazione predefinita" -#: common/models.py:1021 part/admin.py:37 part/admin.py:229 part/models.py:957 +#: common/models.py:1021 part/admin.py:37 part/admin.py:262 part/models.py:958 #: templates/js/translated/bom.js:1595 #: templates/js/translated/table_filters.js:196 #: templates/js/translated/table_filters.js:467 @@ -1949,7 +1958,7 @@ msgstr "Assemblaggio" 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:1028 part/admin.py:38 part/models.py:963 +#: common/models.py:1028 part/admin.py:38 part/models.py:964 #: templates/js/translated/table_filters.js:475 msgid "Component" msgstr "Componente" @@ -1958,7 +1967,7 @@ msgstr "Componente" 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:1035 part/admin.py:39 part/models.py:974 +#: common/models.py:1035 part/admin.py:39 part/models.py:975 msgid "Purchaseable" msgstr "Acquistabile" @@ -1966,7 +1975,7 @@ msgstr "Acquistabile" msgid "Parts are purchaseable by default" msgstr "Gli articoli sono acquistabili per impostazione predefinita" -#: common/models.py:1042 part/admin.py:40 part/models.py:979 +#: common/models.py:1042 part/admin.py:40 part/models.py:980 #: templates/js/translated/table_filters.js:496 msgid "Salable" msgstr "Vendibile" @@ -1975,10 +1984,10 @@ msgstr "Vendibile" msgid "Parts are salable by default" msgstr "Gli articoli sono acquistabili per impostazione predefinita" -#: common/models.py:1049 part/admin.py:42 part/models.py:969 +#: common/models.py:1049 part/admin.py:42 part/models.py:970 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:120 -#: templates/js/translated/table_filters.js:508 +#: templates/js/translated/table_filters.js:512 msgid "Trackable" msgstr "Tracciabile" @@ -1986,10 +1995,10 @@ msgstr "Tracciabile" msgid "Parts are trackable by default" msgstr "Gli articoli sono tracciabili per impostazione predefinita" -#: common/models.py:1056 part/admin.py:43 part/models.py:989 +#: common/models.py:1056 part/admin.py:43 part/models.py:990 #: part/templates/part/part_base.html:156 #: templates/js/translated/table_filters.js:42 -#: templates/js/translated/table_filters.js:512 +#: templates/js/translated/table_filters.js:516 msgid "Virtual" msgstr "Virtuale" @@ -2417,7 +2426,7 @@ msgstr "" msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1461 common/models.py:1803 +#: common/models.py:1461 common/models.py:1810 msgid "Settings key (must be unique - case insensitive" msgstr "Tasto impostazioni (deve essere univoco - maiuscole e minuscole" @@ -2749,41 +2758,50 @@ msgstr "" msgid "Display part scheduling information" msgstr "" -#: common/models.py:1778 -msgid "Table String Length" +#: common/models.py:1778 part/templates/part/detail.html:61 +#: templates/js/translated/part.js:822 +msgid "Part Stocktake" msgstr "" #: common/models.py:1779 +msgid "Display part stocktake information" +msgstr "" + +#: common/models.py:1785 +msgid "Table String Length" +msgstr "" + +#: common/models.py:1786 msgid "Maximimum length limit for strings displayed in table views" msgstr "" -#: common/models.py:1843 +#: common/models.py:1850 msgid "Price break quantity" msgstr "" -#: common/models.py:1850 company/serializers.py:393 order/models.py:975 -#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1145 +#: common/models.py:1857 company/serializers.py:393 order/models.py:975 +#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1416 #: templates/js/translated/pricing.js:354 msgid "Price" msgstr "Prezzo" -#: common/models.py:1851 +#: common/models.py:1858 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2011 common/models.py:2189 +#: common/models.py:2018 common/models.py:2196 msgid "Endpoint" msgstr "" -#: common/models.py:2012 +#: common/models.py:2019 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2021 +#: common/models.py:2028 msgid "Name for this webhook" msgstr "" -#: common/models.py:2026 part/admin.py:36 part/models.py:984 +#: common/models.py:2033 part/admin.py:36 part/models.py:985 #: plugin/models.py:100 templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:116 #: templates/js/translated/table_filters.js:336 @@ -2791,131 +2809,133 @@ msgstr "" msgid "Active" msgstr "Attivo" -#: common/models.py:2027 +#: common/models.py:2034 msgid "Is this webhook active" msgstr "" -#: common/models.py:2041 +#: common/models.py:2048 msgid "Token" msgstr "Token" -#: common/models.py:2042 +#: common/models.py:2049 msgid "Token for access" msgstr "" -#: common/models.py:2049 +#: common/models.py:2056 msgid "Secret" msgstr "" -#: common/models.py:2050 +#: common/models.py:2057 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2156 +#: common/models.py:2163 msgid "Message ID" msgstr "" -#: common/models.py:2157 +#: common/models.py:2164 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2165 +#: common/models.py:2172 msgid "Host" msgstr "" -#: common/models.py:2166 +#: common/models.py:2173 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2173 +#: common/models.py:2180 msgid "Header" msgstr "" -#: common/models.py:2174 +#: common/models.py:2181 msgid "Header of this message" msgstr "" -#: common/models.py:2180 +#: common/models.py:2187 msgid "Body" msgstr "" -#: common/models.py:2181 +#: common/models.py:2188 msgid "Body of this message" msgstr "" -#: common/models.py:2190 +#: common/models.py:2197 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2195 +#: common/models.py:2202 msgid "Worked on" msgstr "" -#: common/models.py:2196 +#: common/models.py:2203 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2355 +#: common/models.py:2362 msgid "Id" msgstr "" -#: common/models.py:2361 templates/js/translated/news.js:35 +#: common/models.py:2368 templates/js/translated/news.js:35 msgid "Title" msgstr "" -#: common/models.py:2371 templates/js/translated/news.js:51 +#: common/models.py:2378 templates/js/translated/news.js:51 msgid "Published" msgstr "" -#: common/models.py:2376 templates/InvenTree/settings/plugin.html:62 +#: common/models.py:2383 templates/InvenTree/settings/plugin.html:62 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/news.js:47 msgid "Author" msgstr "" -#: common/models.py:2381 templates/js/translated/news.js:43 +#: common/models.py:2388 templates/js/translated/news.js:43 msgid "Summary" msgstr "" -#: common/models.py:2386 +#: common/models.py:2393 msgid "Read" msgstr "" -#: common/models.py:2387 +#: common/models.py:2394 msgid "Was this news item read?" msgstr "" -#: common/notifications.py:293 +#: common/notifications.py:294 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:295 +#: common/notifications.py:296 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:301 +#: common/notifications.py:302 msgid "Items Received" msgstr "" -#: common/notifications.py:303 +#: common/notifications.py:304 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:415 +#: common/notifications.py:416 msgid "Error raised by plugin" msgstr "" #: common/views.py:85 order/templates/order/order_wizard/po_upload.html:51 #: order/templates/order/purchase_order_detail.html:25 order/views.py:102 -#: part/views.py:107 templates/patterns/wizard/upload.html:37 +#: part/templates/part/import_wizard/part_upload.html:58 part/views.py:109 +#: templates/patterns/wizard/upload.html:37 msgid "Upload File" msgstr "Carica file" #: common/views.py:86 order/templates/order/order_wizard/match_fields.html:52 #: order/views.py:103 #: part/templates/part/import_wizard/ajax_match_fields.html:45 -#: part/views.py:108 templates/patterns/wizard/match_fields.html:51 +#: part/templates/part/import_wizard/match_fields.html:52 part/views.py:110 +#: templates/patterns/wizard/match_fields.html:51 msgid "Match Fields" msgstr "Abbina Campi" @@ -2934,7 +2954,9 @@ msgstr "Articoli importati" #: common/views.py:509 order/templates/order/order_wizard/match_fields.html:27 #: order/templates/order/order_wizard/match_parts.html:19 #: order/templates/order/order_wizard/po_upload.html:49 +#: part/templates/part/import_wizard/match_fields.html:27 #: part/templates/part/import_wizard/match_references.html:19 +#: part/templates/part/import_wizard/part_upload.html:56 #: templates/patterns/wizard/match_fields.html:26 #: templates/patterns/wizard/upload.html:35 msgid "Previous Step" @@ -2995,7 +3017,7 @@ msgstr "Punto di contatto" msgid "Link to external company information" msgstr "Collegamento alle informazioni aziendali esterne" -#: company/models.py:140 part/models.py:878 +#: company/models.py:140 part/models.py:879 msgid "Image" msgstr "Immagine" @@ -3028,8 +3050,8 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:153 company/serializers.py:399 -#: company/templates/company/company_base.html:107 part/models.py:2762 -#: part/serializers.py:154 part/serializers.py:182 stock/serializers.py:182 +#: company/templates/company/company_base.html:107 part/models.py:2780 +#: part/serializers.py:156 part/serializers.py:184 stock/serializers.py:182 #: templates/InvenTree/settings/pricing.html:64 msgid "Currency" msgstr "Valuta" @@ -3055,12 +3077,12 @@ msgstr "Seleziona articolo" #: templates/js/translated/company.js:433 #: templates/js/translated/company.js:534 #: templates/js/translated/company.js:669 -#: templates/js/translated/company.js:957 templates/js/translated/part.js:238 +#: templates/js/translated/company.js:957 templates/js/translated/part.js:241 #: templates/js/translated/table_filters.js:439 msgid "Manufacturer" msgstr "Produttore" -#: company/models.py:269 templates/js/translated/part.js:239 +#: company/models.py:269 templates/js/translated/part.js:242 msgid "Select manufacturer" msgstr "Seleziona Produttore" @@ -3070,11 +3092,11 @@ msgstr "Seleziona Produttore" #: templates/js/translated/company.js:533 #: templates/js/translated/company.js:685 #: templates/js/translated/company.js:976 templates/js/translated/order.js:2286 -#: templates/js/translated/part.js:249 templates/js/translated/part.js:1067 +#: templates/js/translated/part.js:252 templates/js/translated/part.js:1338 msgid "MPN" msgstr "Codice articolo produttore (MPN)" -#: company/models.py:276 templates/js/translated/part.js:250 +#: company/models.py:276 templates/js/translated/part.js:253 msgid "Manufacturer Part Number" msgstr "Codice articolo produttore" @@ -3100,8 +3122,8 @@ msgstr "Nome parametro" #: company/models.py:370 #: report/templates/report/inventree_test_report_base.html:95 #: stock/models.py:2156 templates/js/translated/company.js:582 -#: templates/js/translated/company.js:800 templates/js/translated/part.js:889 -#: templates/js/translated/stock.js:1399 +#: templates/js/translated/company.js:800 templates/js/translated/part.js:1160 +#: templates/js/translated/stock.js:1398 msgid "Value" msgstr "Valore" @@ -3109,10 +3131,10 @@ msgstr "Valore" msgid "Parameter value" msgstr "Valore del parametro" -#: company/models.py:377 part/admin.py:26 part/models.py:951 -#: part/models.py:3128 part/templates/part/part_base.html:286 -#: templates/InvenTree/settings/settings.html:349 -#: templates/js/translated/company.js:806 templates/js/translated/part.js:895 +#: company/models.py:377 part/admin.py:26 part/models.py:952 +#: part/models.py:3206 part/templates/part/part_base.html:286 +#: templates/InvenTree/settings/settings.html:350 +#: templates/js/translated/company.js:806 templates/js/translated/part.js:1166 msgid "Units" msgstr "Unità" @@ -3132,24 +3154,24 @@ msgstr "L'articolo del costruttore collegato deve riferirsi alla stesso articolo #: templates/js/translated/company.js:304 #: templates/js/translated/company.js:437 #: templates/js/translated/company.js:930 templates/js/translated/order.js:2017 -#: templates/js/translated/part.js:219 templates/js/translated/part.js:1035 +#: templates/js/translated/part.js:222 templates/js/translated/part.js:1306 #: templates/js/translated/pricing.js:231 #: templates/js/translated/table_filters.js:443 msgid "Supplier" msgstr "Fornitore" -#: company/models.py:498 templates/js/translated/part.js:220 +#: company/models.py:498 templates/js/translated/part.js:223 msgid "Select supplier" msgstr "Seleziona fornitore" #: company/models.py:503 company/templates/company/supplier_part.html:146 #: part/bom.py:253 part/bom.py:281 templates/js/translated/company.js:303 -#: templates/js/translated/order.js:2273 templates/js/translated/part.js:230 -#: templates/js/translated/part.js:1053 templates/js/translated/pricing.js:243 +#: templates/js/translated/order.js:2273 templates/js/translated/part.js:233 +#: templates/js/translated/part.js:1324 templates/js/translated/pricing.js:243 msgid "SKU" msgstr "" -#: company/models.py:504 templates/js/translated/part.js:231 +#: company/models.py:504 templates/js/translated/part.js:234 msgid "Supplier stock keeping unit" msgstr "" @@ -3166,24 +3188,25 @@ msgid "Supplier part description" msgstr "Descrizione articolo fornitore" #: company/models.py:528 company/templates/company/supplier_part.html:181 -#: part/admin.py:225 part/models.py:3381 part/templates/part/upload_bom.html:59 +#: part/admin.py:258 part/models.py:3459 part/templates/part/upload_bom.html:59 +#: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:397 msgid "Note" msgstr "Nota" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "base cost" msgstr "costo base" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "Minimum charge (e.g. stocking fee)" msgstr "Onere minimo (ad esempio tassa di stoccaggio)" #: company/models.py:534 company/templates/company/supplier_part.html:167 #: stock/admin.py:101 stock/models.py:682 #: stock/templates/stock/item_base.html:243 -#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2016 +#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2011 msgid "Packaging" msgstr "Confezionamento" @@ -3196,7 +3219,7 @@ msgstr "Imballaggio del pezzo" #: templates/js/translated/company.js:997 templates/js/translated/order.js:826 #: templates/js/translated/order.js:1253 templates/js/translated/order.js:1508 #: templates/js/translated/order.js:2317 templates/js/translated/order.js:2334 -#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1137 +#: templates/js/translated/part.js:1356 templates/js/translated/part.js:1408 msgid "Pack Quantity" msgstr "" @@ -3204,7 +3227,7 @@ msgstr "" msgid "Unit quantity supplied in a single pack" msgstr "" -#: company/models.py:544 part/models.py:1863 +#: company/models.py:544 part/models.py:1869 msgid "multiple" msgstr "multiplo" @@ -3216,8 +3239,8 @@ msgstr "Ordine multiplo" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:1118 templates/js/translated/build.js:1883 -#: templates/js/translated/build.js:2770 templates/js/translated/part.js:623 -#: templates/js/translated/part.js:626 +#: templates/js/translated/build.js:2770 templates/js/translated/part.js:626 +#: templates/js/translated/part.js:629 #: templates/js/translated/table_filters.js:206 msgid "Available" msgstr "Disponibile" @@ -3300,7 +3323,7 @@ msgstr "" #: stock/templates/stock/item_base.html:399 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:429 templates/js/translated/order.js:2827 -#: templates/js/translated/stock.js:2607 +#: templates/js/translated/stock.js:2602 #: templates/js/translated/table_filters.js:447 msgid "Customer" msgstr "Cliente" @@ -3314,7 +3337,7 @@ msgid "Phone" msgstr "Telefono" #: company/templates/company/company_base.html:206 -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:525 msgid "Remove Image" msgstr "" @@ -3323,19 +3346,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:209 -#: part/templates/part/part_base.html:514 +#: part/templates/part/part_base.html:528 #: templates/InvenTree/settings/user.html:87 #: templates/InvenTree/settings/user.html:149 msgid "Remove" msgstr "Rimuovi" #: company/templates/company/company_base.html:238 -#: part/templates/part/part_base.html:543 +#: part/templates/part/part_base.html:557 msgid "Upload Image" msgstr "Carica immagine" #: company/templates/company/company_base.html:253 -#: part/templates/part/part_base.html:598 +#: part/templates/part/part_base.html:612 msgid "Download Image" msgstr "Download Immagine" @@ -3351,7 +3374,7 @@ msgstr "Crea nuovo fornitore" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:357 +#: part/templates/part/detail.html:380 msgid "New Supplier Part" msgstr "Nuovo fornitore articolo" @@ -3380,7 +3403,7 @@ msgstr "" msgid "Create new manufacturer part" msgstr "" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:387 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:410 msgid "New Manufacturer Part" msgstr "" @@ -3394,9 +3417,9 @@ msgstr "Giacenza Fornitore" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:35 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:35 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:200 -#: templates/InvenTree/settings/sidebar.html:49 +#: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:293 templates/navbar.html:50 #: users/models.py:42 msgid "Purchase Orders" @@ -3417,9 +3440,9 @@ msgstr "" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:39 +#: part/templates/part/detail.html:130 part/templates/part/part_sidebar.html:39 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:220 -#: templates/InvenTree/settings/sidebar.html:51 +#: templates/InvenTree/settings/sidebar.html:53 #: templates/js/translated/search.js:317 templates/navbar.html:61 #: users/models.py:43 msgid "Sales Orders" @@ -3451,7 +3474,7 @@ msgstr "Produttori" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:221 -#: part/templates/part/detail.html:87 part/templates/part/part_base.html:85 +#: part/templates/part/detail.html:110 part/templates/part/part_base.html:85 msgid "Order part" msgstr "Articoli ordinati" @@ -3482,28 +3505,28 @@ msgid "Suppliers" msgstr "Fornitori" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:368 +#: part/templates/part/detail.html:391 msgid "Delete supplier parts" msgstr "Elimina articolo fornitore" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:369 part/templates/part/detail.html:399 -#: templates/js/translated/forms.js:455 templates/js/translated/helpers.js:38 -#: templates/js/translated/part.js:351 templates/js/translated/stock.js:188 -#: users/models.py:224 +#: part/templates/part/detail.html:392 part/templates/part/detail.html:422 +#: templates/js/translated/forms.js:458 templates/js/translated/helpers.js:38 +#: templates/js/translated/part.js:354 templates/js/translated/stock.js:187 +#: users/models.py:225 msgid "Delete" msgstr "Elimina" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:184 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:207 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "Parametri" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:189 +#: part/templates/part/detail.html:212 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:62 msgid "New Parameter" @@ -3514,7 +3537,7 @@ msgid "Delete parameters" msgstr "Elimina il parametro" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:825 +#: part/templates/part/detail.html:865 msgid "Add Parameter" msgstr "Aggiungi parametro" @@ -3538,7 +3561,7 @@ msgstr "" #: company/templates/company/supplier_part.html:24 stock/models.py:665 #: stock/templates/stock/item_base.html:236 #: templates/js/translated/company.js:946 templates/js/translated/order.js:1173 -#: templates/js/translated/stock.js:1974 +#: templates/js/translated/stock.js:1969 msgid "Supplier Part" msgstr "Articolo Fornitore" @@ -3578,7 +3601,7 @@ msgstr "" #: company/templates/company/supplier_part.html:56 #: company/templates/company/supplier_part.html:57 #: company/templates/company/supplier_part.html:222 -#: part/templates/part/detail.html:88 +#: part/templates/part/detail.html:111 msgid "Order Part" msgstr "Ordine Articolo" @@ -3630,7 +3653,7 @@ msgstr "Crea nuova allocazione magazzino" #: company/templates/company/supplier_part.html:204 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:198 -#: templates/js/translated/stock.js:467 +#: templates/js/translated/stock.js:466 msgid "New Stock Item" msgstr "Nuovo Elemento in giacenza" @@ -3662,10 +3685,10 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 -#: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/part.js:777 templates/js/translated/part.js:1378 -#: templates/js/translated/part.js:1534 templates/js/translated/stock.js:994 -#: templates/js/translated/stock.js:1799 templates/navbar.html:31 +#: templates/InvenTree/settings/sidebar.html:47 +#: templates/js/translated/part.js:1048 templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1805 templates/js/translated/stock.js:993 +#: templates/js/translated/stock.js:1794 templates/navbar.html:31 msgid "Stock" msgstr "Magazzino" @@ -3680,7 +3703,7 @@ msgstr "Prezzo articolo del fornitore" #: company/templates/company/supplier_part_navbar.html:29 #: part/templates/part/part_sidebar.html:30 -#: templates/InvenTree/settings/sidebar.html:35 +#: templates/InvenTree/settings/sidebar.html:37 msgid "Pricing" msgstr "Prezzi" @@ -3692,7 +3715,7 @@ msgstr "Prezzi" #: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:155 templates/js/translated/search.js:225 -#: templates/js/translated/stock.js:2484 users/models.py:40 +#: templates/js/translated/stock.js:2479 users/models.py:40 msgid "Stock Items" msgstr "Articoli in magazzino" @@ -3801,9 +3824,9 @@ msgstr "" #: stock/templates/stock/item_base.html:182 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:619 templates/js/translated/order.js:1174 -#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1012 -#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1954 -#: templates/js/translated/stock.js:2588 +#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1283 +#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1949 +#: templates/js/translated/stock.js:2583 msgid "Purchase Order" msgstr "" @@ -3973,7 +3996,7 @@ msgstr "Articolo Fornitore" #: order/models.py:1046 order/templates/order/order_base.html:178 #: templates/js/translated/order.js:1679 templates/js/translated/order.js:2404 -#: templates/js/translated/part.js:1129 templates/js/translated/part.js:1161 +#: templates/js/translated/part.js:1400 templates/js/translated/part.js:1432 #: templates/js/translated/table_filters.js:358 msgid "Received" msgstr "" @@ -3984,7 +4007,7 @@ msgstr "" #: order/models.py:1054 stock/models.py:800 stock/serializers.py:173 #: stock/templates/stock/item_base.html:189 -#: templates/js/translated/stock.js:2005 +#: templates/js/translated/stock.js:2000 msgid "Purchase Price" msgstr "" @@ -4350,18 +4373,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:9 #: part/templates/part/import_wizard/ajax_match_fields.html:9 +#: part/templates/part/import_wizard/match_fields.html:9 #: templates/patterns/wizard/match_fields.html:8 msgid "Missing selections for the following required columns" msgstr "" #: order/templates/order/order_wizard/match_fields.html:20 #: part/templates/part/import_wizard/ajax_match_fields.html:20 +#: part/templates/part/import_wizard/match_fields.html:20 #: templates/patterns/wizard/match_fields.html:19 msgid "Duplicate selections found, see below. Fix them then retry submitting." msgstr "" #: order/templates/order/order_wizard/match_fields.html:29 #: order/templates/order/order_wizard/match_parts.html:21 +#: part/templates/part/import_wizard/match_fields.html:29 #: part/templates/part/import_wizard/match_references.html:21 #: templates/patterns/wizard/match_fields.html:28 msgid "Submit Selections" @@ -4369,18 +4395,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:35 #: part/templates/part/import_wizard/ajax_match_fields.html:28 +#: part/templates/part/import_wizard/match_fields.html:35 #: templates/patterns/wizard/match_fields.html:34 msgid "File Fields" msgstr "" #: order/templates/order/order_wizard/match_fields.html:42 #: part/templates/part/import_wizard/ajax_match_fields.html:35 +#: part/templates/part/import_wizard/match_fields.html:42 #: templates/patterns/wizard/match_fields.html:41 msgid "Remove column" msgstr "Elimina colonna" #: order/templates/order/order_wizard/match_fields.html:60 #: part/templates/part/import_wizard/ajax_match_fields.html:53 +#: part/templates/part/import_wizard/match_fields.html:60 #: templates/patterns/wizard/match_fields.html:59 msgid "Duplicate selection" msgstr "Duplica selezionati" @@ -4389,12 +4418,13 @@ msgstr "Duplica selezionati" #: order/templates/order/order_wizard/match_parts.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: 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:102 templates/js/translated/build.js:485 #: templates/js/translated/build.js:641 templates/js/translated/build.js:2088 #: templates/js/translated/order.js:1122 templates/js/translated/order.js:1624 -#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:657 -#: templates/js/translated/stock.js:825 +#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:824 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "Elimina riga" @@ -4429,6 +4459,7 @@ msgstr "" #: order/templates/order/order_wizard/po_upload.html:27 #: part/templates/part/import_wizard/ajax_part_upload.html:10 +#: part/templates/part/import_wizard/part_upload.html:26 #: templates/patterns/wizard/upload.html:13 #, python-format msgid "Step %(step)s of %(count)s" @@ -4567,12 +4598,12 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:19 part/admin.py:219 part/models.py:3262 stock/admin.py:84 +#: part/admin.py:19 part/admin.py:252 part/models.py:3340 stock/admin.py:84 #: templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "Codice Articolo" -#: part/admin.py:20 part/admin.py:221 part/models.py:3266 stock/admin.py:85 +#: part/admin.py:20 part/admin.py:254 part/models.py:3344 stock/admin.py:85 msgid "Part Name" msgstr "" @@ -4580,32 +4611,32 @@ msgstr "" msgid "Part Description" msgstr "" -#: part/admin.py:22 part/models.py:852 part/templates/part/part_base.html:272 -#: templates/js/translated/part.js:763 templates/js/translated/part.js:1491 -#: templates/js/translated/stock.js:1765 +#: part/admin.py:22 part/models.py:853 part/templates/part/part_base.html:272 +#: templates/js/translated/part.js:1034 templates/js/translated/part.js:1762 +#: templates/js/translated/stock.js:1760 msgid "IPN" msgstr "IPN - Numero di riferimento interno" -#: part/admin.py:23 part/models.py:860 part/templates/part/part_base.html:279 -#: report/models.py:171 templates/js/translated/part.js:768 +#: part/admin.py:23 part/models.py:861 part/templates/part/part_base.html:279 +#: report/models.py:171 templates/js/translated/part.js:1039 msgid "Revision" msgstr "Revisione" -#: part/admin.py:24 part/admin.py:145 part/models.py:838 +#: part/admin.py:24 part/admin.py:178 part/models.py:839 #: part/templates/part/category.html:87 part/templates/part/part_base.html:300 msgid "Keywords" msgstr "Parole Chiave" -#: part/admin.py:28 part/admin.py:139 +#: part/admin.py:28 part/admin.py:172 #: templates/js/translated/model_renderers.js:338 msgid "Category ID" msgstr "Id Categoria" -#: part/admin.py:29 part/admin.py:140 +#: part/admin.py:29 part/admin.py:173 msgid "Category Name" msgstr "" -#: part/admin.py:30 part/admin.py:144 +#: part/admin.py:30 part/admin.py:177 msgid "Default Location ID" msgstr "" @@ -4613,7 +4644,7 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:33 part/models.py:944 part/templates/part/part_base.html:206 +#: part/admin.py:33 part/models.py:945 part/templates/part/part_base.html:206 msgid "Minimum Stock" msgstr "Scorta Minima" @@ -4625,8 +4656,8 @@ msgstr "In magazzino" #: part/admin.py:48 part/bom.py:145 part/templates/part/part_base.html:213 #: templates/js/translated/bom.js:1156 templates/js/translated/build.js:1935 -#: templates/js/translated/part.js:613 templates/js/translated/part.js:633 -#: templates/js/translated/part.js:1381 templates/js/translated/part.js:1559 +#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 +#: templates/js/translated/part.js:1652 templates/js/translated/part.js:1830 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "Ordinato" @@ -4642,115 +4673,115 @@ msgid "Allocated" msgstr "" #: part/admin.py:51 part/templates/part/part_base.html:244 -#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 -#: templates/js/translated/part.js:1385 templates/js/translated/part.js:1566 +#: templates/js/translated/part.js:619 templates/js/translated/part.js:639 +#: templates/js/translated/part.js:1656 templates/js/translated/part.js:1837 msgid "Building" msgstr "" -#: part/admin.py:52 part/models.py:2846 +#: part/admin.py:52 part/models.py:2864 msgid "Minimum Cost" msgstr "" -#: part/admin.py:53 part/models.py:2852 +#: part/admin.py:53 part/models.py:2870 msgid "Maximum Cost" msgstr "" -#: part/admin.py:142 part/admin.py:216 stock/admin.py:26 stock/admin.py:98 +#: part/admin.py:175 part/admin.py:249 stock/admin.py:26 stock/admin.py:98 msgid "Parent ID" msgstr "" -#: part/admin.py:143 part/admin.py:218 stock/admin.py:27 +#: part/admin.py:176 part/admin.py:251 stock/admin.py:27 msgid "Parent Name" msgstr "" -#: part/admin.py:146 part/templates/part/category.html:81 +#: part/admin.py:179 part/templates/part/category.html:81 #: part/templates/part/category.html:94 msgid "Category Path" msgstr "Percorso Categoria" -#: part/admin.py:149 part/models.py:382 part/templates/part/cat_link.html:3 +#: part/admin.py:182 part/models.py:383 part/templates/part/cat_link.html:3 #: part/templates/part/category.html:23 part/templates/part/category.html:134 #: part/templates/part/category.html:154 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:84 -#: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:2065 templates/js/translated/search.js:146 +#: templates/InvenTree/settings/sidebar.html:43 +#: templates/js/translated/part.js:2346 templates/js/translated/search.js:146 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "Articoli" -#: part/admin.py:211 +#: part/admin.py:244 msgid "BOM Level" msgstr "" -#: part/admin.py:213 +#: part/admin.py:246 msgid "BOM Item ID" msgstr "" -#: part/admin.py:217 +#: part/admin.py:250 msgid "Parent IPN" msgstr "" -#: part/admin.py:220 part/models.py:3270 +#: part/admin.py:253 part/models.py:3348 msgid "Part IPN" msgstr "" -#: part/admin.py:226 templates/js/translated/pricing.js:91 +#: part/admin.py:259 templates/js/translated/pricing.js:91 #: templates/js/translated/pricing.js:732 msgid "Minimum Price" msgstr "" -#: part/admin.py:227 templates/js/translated/pricing.js:86 +#: part/admin.py:260 templates/js/translated/pricing.js:86 #: templates/js/translated/pricing.js:740 msgid "Maximum Price" msgstr "" -#: part/api.py:536 +#: part/api.py:538 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:556 +#: part/api.py:558 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:574 +#: part/api.py:576 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:660 +#: part/api.py:662 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:818 +#: part/api.py:820 msgid "Valid" msgstr "" -#: part/api.py:819 +#: part/api.py:821 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:825 +#: part/api.py:827 msgid "This option must be selected" msgstr "" -#: part/api.py:1265 +#: part/api.py:1281 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1269 +#: part/api.py:1285 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1284 +#: part/api.py:1300 msgid "Specify location for initial part stock" msgstr "Specifica la posizione per lo stock iniziale" -#: part/api.py:1315 part/api.py:1319 part/api.py:1334 part/api.py:1338 +#: part/api.py:1331 part/api.py:1335 part/api.py:1350 part/api.py:1354 msgid "This field is required" msgstr "" -#: part/bom.py:142 part/models.py:116 part/models.py:887 -#: part/templates/part/category.html:109 part/templates/part/part_base.html:360 +#: part/bom.py:142 part/models.py:116 part/models.py:888 +#: part/templates/part/category.html:109 part/templates/part/part_base.html:374 msgid "Default Location" msgstr "Posizione Predefinita" @@ -4801,7 +4832,7 @@ msgstr "" msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:159 part/models.py:3211 part/templates/part/category.html:16 +#: part/models.py:159 part/models.py:3289 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "Categoria Articoli" @@ -4812,423 +4843,459 @@ msgstr "Categoria Articoli" msgid "Part Categories" msgstr "Categorie Articolo" -#: part/models.py:468 +#: part/models.py:469 msgid "Invalid choice for parent part" msgstr "Scelta non valida per l'articolo principale" -#: part/models.py:538 part/models.py:550 +#: part/models.py:539 part/models.py:551 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:640 +#: part/models.py:641 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:771 +#: part/models.py:772 msgid "Duplicate IPN not allowed in part settings" msgstr "Non è consentito duplicare IPN nelle impostazioni dell'articolo" -#: part/models.py:776 +#: part/models.py:777 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:790 +#: part/models.py:791 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:808 part/models.py:3267 +#: part/models.py:809 part/models.py:3345 msgid "Part name" msgstr "Nome articolo" -#: part/models.py:815 +#: part/models.py:816 msgid "Is Template" msgstr "È Template" -#: part/models.py:816 +#: part/models.py:817 msgid "Is this part a template part?" msgstr "Quest'articolo è un articolo di template?" -#: part/models.py:826 +#: part/models.py:827 msgid "Is this part a variant of another part?" msgstr "Questa parte è una variante di un altro articolo?" -#: part/models.py:827 +#: part/models.py:828 msgid "Variant Of" msgstr "Variante Di" -#: part/models.py:833 +#: part/models.py:834 msgid "Part description" msgstr "Descrizione articolo" -#: part/models.py:839 +#: part/models.py:840 msgid "Part keywords to improve visibility in search results" msgstr "Parole chiave per migliorare la visibilità nei risultati di ricerca" -#: part/models.py:846 part/models.py:2966 part/models.py:3210 +#: part/models.py:847 part/models.py:3044 part/models.py:3288 #: part/templates/part/part_base.html:263 -#: templates/InvenTree/settings/settings.html:229 +#: templates/InvenTree/settings/settings.html:230 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1513 templates/js/translated/part.js:1770 +#: templates/js/translated/part.js:1784 templates/js/translated/part.js:2051 msgid "Category" msgstr "Categoria" -#: part/models.py:847 +#: part/models.py:848 msgid "Part category" msgstr "Categoria articolo" -#: part/models.py:853 +#: part/models.py:854 msgid "Internal Part Number" msgstr "Numero Dell'articolo Interno" -#: part/models.py:859 +#: part/models.py:860 msgid "Part revision or version number" msgstr "Numero di revisione o di versione" -#: part/models.py:885 +#: part/models.py:886 msgid "Where is this item normally stored?" msgstr "Dove viene normalmente immagazzinato questo articolo?" -#: part/models.py:930 part/templates/part/part_base.html:369 +#: part/models.py:931 part/templates/part/part_base.html:383 msgid "Default Supplier" msgstr "Fornitore predefinito" -#: part/models.py:931 +#: part/models.py:932 msgid "Default supplier part" msgstr "Articolo fornitore predefinito" -#: part/models.py:938 +#: part/models.py:939 msgid "Default Expiry" msgstr "Scadenza Predefinita" -#: part/models.py:939 +#: part/models.py:940 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:945 +#: part/models.py:946 msgid "Minimum allowed stock level" msgstr "Livello minimo di giacenza consentito" -#: part/models.py:952 +#: part/models.py:953 msgid "Stock keeping units for this part" msgstr "Unità di conservazione delle scorte per quest'articolo" -#: part/models.py:958 +#: part/models.py:959 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:964 +#: part/models.py:965 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:970 +#: part/models.py:971 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:975 +#: part/models.py:976 msgid "Can this part be purchased from external suppliers?" msgstr "Quest'articolo può essere acquistato da fornitori esterni?" -#: part/models.py:980 +#: part/models.py:981 msgid "Can this part be sold to customers?" msgstr "Questo pezzo può essere venduto ai clienti?" -#: part/models.py:985 +#: part/models.py:986 msgid "Is this part active?" msgstr "Quest'articolo è attivo?" -#: part/models.py:990 +#: part/models.py:991 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:992 +#: part/models.py:993 msgid "Part notes" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "BOM checksum" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:997 +#: part/models.py:998 msgid "BOM checked by" msgstr "" -#: part/models.py:999 +#: part/models.py:1000 msgid "BOM checked date" msgstr "" -#: part/models.py:1003 +#: part/models.py:1004 msgid "Creation User" msgstr "" -#: part/models.py:1863 +#: part/models.py:1010 part/templates/part/part_base.html:345 +#: stock/templates/stock/item_base.html:445 +#: templates/js/translated/part.js:1901 +msgid "Last Stocktake" +msgstr "Ultimo Inventario" + +#: part/models.py:1869 msgid "Sell multiple" msgstr "" -#: part/models.py:2763 +#: part/models.py:2781 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:2768 +#: part/models.py:2786 templates/js/translated/part.js:806 msgid "Updated" msgstr "" -#: part/models.py:2769 +#: part/models.py:2787 msgid "Timestamp of last pricing update" msgstr "" -#: part/models.py:2786 +#: part/models.py:2804 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:2787 +#: part/models.py:2805 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:2792 +#: part/models.py:2810 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:2793 +#: part/models.py:2811 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:2798 +#: part/models.py:2816 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:2799 +#: part/models.py:2817 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:2804 +#: part/models.py:2822 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:2805 +#: part/models.py:2823 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:2810 +#: part/models.py:2828 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:2811 +#: part/models.py:2829 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:2816 +#: part/models.py:2834 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:2817 +#: part/models.py:2835 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:2822 +#: part/models.py:2840 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:2823 +#: part/models.py:2841 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:2828 +#: part/models.py:2846 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:2829 +#: part/models.py:2847 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:2834 +#: part/models.py:2852 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:2835 +#: part/models.py:2853 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:2840 +#: part/models.py:2858 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:2841 +#: part/models.py:2859 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:2847 +#: part/models.py:2865 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:2853 +#: part/models.py:2871 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:2858 +#: part/models.py:2876 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:2859 +#: part/models.py:2877 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:2864 +#: part/models.py:2882 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:2865 +#: part/models.py:2883 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:2870 +#: part/models.py:2888 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:2871 +#: part/models.py:2889 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:2876 +#: part/models.py:2894 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:2877 +#: part/models.py:2895 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3013 +#: part/models.py:2913 +msgid "Part for stocktake" +msgstr "" + +#: part/models.py:2920 +msgid "Total available stock at time of stocktake" +msgstr "" + +#: part/models.py:2924 part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:63 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:2043 templates/js/translated/part.js:887 +#: templates/js/translated/pricing.js:537 +#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2511 +msgid "Date" +msgstr "Data" + +#: part/models.py:2925 +msgid "Date stocktake was performed" +msgstr "" + +#: part/models.py:2933 +msgid "Additional notes" +msgstr "" + +#: part/models.py:2941 +msgid "User who performed this stocktake" +msgstr "" + +#: part/models.py:3091 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3030 +#: part/models.py:3108 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:3050 templates/js/translated/part.js:2116 -#: templates/js/translated/stock.js:1379 +#: part/models.py:3128 templates/js/translated/part.js:2397 +#: templates/js/translated/stock.js:1378 msgid "Test Name" msgstr "" -#: part/models.py:3051 +#: part/models.py:3129 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3056 +#: part/models.py:3134 msgid "Test Description" msgstr "Descrizione Di Prova" -#: part/models.py:3057 +#: part/models.py:3135 msgid "Enter description for this test" msgstr "" -#: part/models.py:3062 templates/js/translated/part.js:2125 +#: part/models.py:3140 templates/js/translated/part.js:2406 #: templates/js/translated/table_filters.js:322 msgid "Required" msgstr "" -#: part/models.py:3063 +#: part/models.py:3141 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3068 templates/js/translated/part.js:2133 +#: part/models.py:3146 templates/js/translated/part.js:2414 msgid "Requires Value" msgstr "" -#: part/models.py:3069 +#: part/models.py:3147 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3074 templates/js/translated/part.js:2140 +#: part/models.py:3152 templates/js/translated/part.js:2421 msgid "Requires Attachment" msgstr "" -#: part/models.py:3075 +#: part/models.py:3153 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3116 +#: part/models.py:3194 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3124 +#: part/models.py:3202 msgid "Parameter Name" msgstr "" -#: part/models.py:3128 +#: part/models.py:3206 msgid "Parameter Units" msgstr "" -#: part/models.py:3133 +#: part/models.py:3211 msgid "Parameter description" msgstr "" -#: part/models.py:3166 +#: part/models.py:3244 msgid "Parent Part" msgstr "" -#: part/models.py:3168 part/models.py:3216 part/models.py:3217 -#: templates/InvenTree/settings/settings.html:224 +#: part/models.py:3246 part/models.py:3294 part/models.py:3295 +#: templates/InvenTree/settings/settings.html:225 msgid "Parameter Template" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Data" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Parameter Value" msgstr "" -#: part/models.py:3221 templates/InvenTree/settings/settings.html:233 +#: part/models.py:3299 templates/InvenTree/settings/settings.html:234 msgid "Default Value" msgstr "" -#: part/models.py:3222 +#: part/models.py:3300 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3259 +#: part/models.py:3337 msgid "Part ID or part name" msgstr "" -#: part/models.py:3263 +#: part/models.py:3341 msgid "Unique part ID value" msgstr "" -#: part/models.py:3271 +#: part/models.py:3349 msgid "Part IPN value" msgstr "" -#: part/models.py:3274 +#: part/models.py:3352 msgid "Level" msgstr "" -#: part/models.py:3275 +#: part/models.py:3353 msgid "BOM level" msgstr "" -#: part/models.py:3344 +#: part/models.py:3422 msgid "Select parent part" msgstr "" -#: part/models.py:3352 +#: part/models.py:3430 msgid "Sub part" msgstr "" -#: part/models.py:3353 +#: part/models.py:3431 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:3359 +#: part/models.py:3437 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:3363 part/templates/part/upload_bom.html:58 +#: part/models.py:3441 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:933 templates/js/translated/bom.js:986 #: templates/js/translated/build.js:1868 #: templates/js/translated/table_filters.js:84 @@ -5236,189 +5303,189 @@ msgstr "" msgid "Optional" msgstr "" -#: part/models.py:3364 +#: part/models.py:3442 msgid "This BOM item is optional" msgstr "" -#: part/models.py:3369 templates/js/translated/bom.js:929 +#: part/models.py:3447 templates/js/translated/bom.js:929 #: templates/js/translated/bom.js:995 templates/js/translated/build.js:1859 #: templates/js/translated/table_filters.js:88 msgid "Consumable" msgstr "" -#: part/models.py:3370 +#: part/models.py:3448 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:3374 part/templates/part/upload_bom.html:55 +#: part/models.py:3452 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:3375 +#: part/models.py:3453 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:3378 +#: part/models.py:3456 msgid "BOM item reference" msgstr "" -#: part/models.py:3381 +#: part/models.py:3459 msgid "BOM item notes" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "Checksum" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "BOM line checksum" msgstr "" -#: part/models.py:3387 part/templates/part/upload_bom.html:57 +#: part/models.py:3465 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1012 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:108 msgid "Inherited" msgstr "" -#: part/models.py:3388 +#: part/models.py:3466 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:3393 part/templates/part/upload_bom.html:56 +#: part/models.py:3471 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1004 msgid "Allow Variants" msgstr "Consenti Le Varianti" -#: part/models.py:3394 +#: part/models.py:3472 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:3480 stock/models.py:558 +#: part/models.py:3558 stock/models.py:558 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:3489 part/models.py:3491 +#: part/models.py:3567 part/models.py:3569 msgid "Sub part must be specified" msgstr "" -#: part/models.py:3618 +#: part/models.py:3696 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:3639 +#: part/models.py:3717 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:3652 +#: part/models.py:3730 msgid "Parent BOM item" msgstr "" -#: part/models.py:3660 +#: part/models.py:3738 msgid "Substitute part" msgstr "" -#: part/models.py:3675 +#: part/models.py:3753 msgid "Part 1" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Part 2" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Select Related Part" msgstr "" -#: part/models.py:3697 +#: part/models.py:3775 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:3701 +#: part/models.py:3779 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:155 part/serializers.py:183 stock/serializers.py:183 +#: part/serializers.py:157 part/serializers.py:185 stock/serializers.py:183 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:543 +#: part/serializers.py:584 msgid "Update" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:585 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:854 +#: part/serializers.py:895 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:862 +#: part/serializers.py:903 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:863 +#: part/serializers.py:904 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:868 +#: part/serializers.py:909 msgid "Include Inherited" msgstr "" -#: part/serializers.py:869 +#: part/serializers.py:910 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:874 +#: part/serializers.py:915 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:875 +#: part/serializers.py:916 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:921 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:881 +#: part/serializers.py:922 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:962 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:922 +#: part/serializers.py:963 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:952 +#: part/serializers.py:993 msgid "No part column specified" msgstr "" -#: part/serializers.py:995 +#: part/serializers.py:1036 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:998 +#: part/serializers.py:1039 msgid "No matching part found" msgstr "" -#: part/serializers.py:1001 +#: part/serializers.py:1042 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1010 +#: part/serializers.py:1051 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1059 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1039 +#: part/serializers.py:1080 msgid "At least one BOM item is required" msgstr "" @@ -5450,7 +5517,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:267 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:290 msgid "BOM actions" msgstr "" @@ -5507,8 +5574,8 @@ msgstr "Crea nuovo articolo" msgid "New Part" msgstr "Nuovo articolo" -#: part/templates/part/category.html:169 part/templates/part/detail.html:366 -#: part/templates/part/detail.html:397 +#: part/templates/part/category.html:169 part/templates/part/detail.html:389 +#: part/templates/part/detail.html:420 msgid "Options" msgstr "Opzioni" @@ -5556,7 +5623,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:404 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:407 msgid "Duplicate Part" msgstr "" @@ -5593,118 +5660,128 @@ msgstr "" msgid "Refresh" msgstr "Aggiorna" -#: part/templates/part/detail.html:59 +#: part/templates/part/detail.html:65 +msgid "Add stocktake information" +msgstr "" + +#: part/templates/part/detail.html:66 part/templates/part/part_sidebar.html:49 +#: stock/admin.py:107 templates/js/translated/stock.js:1905 +msgid "Stocktake" +msgstr "Inventario" + +#: part/templates/part/detail.html:82 msgid "Part Test Templates" msgstr "" -#: part/templates/part/detail.html:64 +#: part/templates/part/detail.html:87 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:144 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "Assegnazione Ordine Di Vendita" -#: part/templates/part/detail.html:141 +#: part/templates/part/detail.html:164 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:156 +#: part/templates/part/detail.html:179 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:160 +#: part/templates/part/detail.html:183 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:161 +#: part/templates/part/detail.html:184 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:188 +#: part/templates/part/detail.html:211 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:225 part/templates/part/part_sidebar.html:52 +#: part/templates/part/detail.html:248 part/templates/part/part_sidebar.html:57 msgid "Related Parts" msgstr "Articoli correlati" -#: part/templates/part/detail.html:229 part/templates/part/detail.html:230 +#: part/templates/part/detail.html:252 part/templates/part/detail.html:253 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:250 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:273 part/templates/part/part_sidebar.html:17 +#: report/templates/report/inventree_bill_of_materials_report.html:100 msgid "Bill of Materials" msgstr "Distinta base" -#: part/templates/part/detail.html:255 +#: part/templates/part/detail.html:278 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:259 templates/js/translated/bom.js:309 +#: part/templates/part/detail.html:282 templates/js/translated/bom.js:309 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:261 +#: part/templates/part/detail.html:284 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:271 +#: part/templates/part/detail.html:294 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:272 templates/js/translated/part.js:276 +#: part/templates/part/detail.html:295 templates/js/translated/part.js:279 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:273 +#: part/templates/part/detail.html:296 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:278 part/templates/part/detail.html:279 +#: part/templates/part/detail.html:301 part/templates/part/detail.html:302 #: templates/js/translated/bom.js:1268 templates/js/translated/bom.js:1269 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:292 +#: part/templates/part/detail.html:315 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:310 +#: part/templates/part/detail.html:333 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:337 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:360 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:353 +#: part/templates/part/detail.html:376 msgid "Part Suppliers" msgstr "Fornitori articoli" -#: part/templates/part/detail.html:383 +#: part/templates/part/detail.html:406 msgid "Part Manufacturers" msgstr "Componenti Produttori" -#: part/templates/part/detail.html:399 +#: part/templates/part/detail.html:422 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:696 msgid "Related Part" msgstr "Articoli correlati" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:704 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:796 msgid "Add Test Result Template" msgstr "" #: part/templates/part/import_wizard/ajax_part_upload.html:29 #: part/templates/part/import_wizard/part_upload.html:14 -msgid "Unsuffitient privileges." +msgid "Insufficient privileges." msgstr "" #: part/templates/part/import_wizard/part_upload.html:8 @@ -5715,6 +5792,34 @@ msgstr "" msgid "Import Parts from File" msgstr "" +#: part/templates/part/import_wizard/part_upload.html:31 +msgid "Requirements for part import" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "The part import file must contain the required named columns as provided in the " +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:89 +msgid "Download Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:92 +#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 +#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 +msgid "Format" +msgstr "Formato" + +#: part/templates/part/import_wizard/part_upload.html:93 +#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 +#: templates/js/translated/order.js:999 +msgid "Select file format" +msgstr "" + #: part/templates/part/part_app_base.html:12 msgid "Part List" msgstr "" @@ -5804,12 +5909,12 @@ msgstr "" #: templates/js/translated/company.js:660 #: templates/js/translated/company.js:921 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:677 templates/js/translated/part.js:755 +#: templates/js/translated/part.js:680 templates/js/translated/part.js:1026 msgid "Inactive" msgstr "Inattivo" #: part/templates/part/part_base.html:165 -#: part/templates/part/part_base.html:666 +#: part/templates/part/part_base.html:680 msgid "Show Part Details" msgstr "" @@ -5837,38 +5942,38 @@ msgid "Minimum stock level" msgstr "" #: part/templates/part/part_base.html:330 templates/js/translated/bom.js:1032 -#: templates/js/translated/part.js:798 templates/js/translated/part.js:1604 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:1875 #: templates/js/translated/pricing.js:124 #: templates/js/translated/pricing.js:762 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:345 +#: part/templates/part/part_base.html:359 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:349 +#: part/templates/part/part_base.html:363 #: stock/templates/stock/item_base.html:331 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:449 +#: part/templates/part/part_base.html:463 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:495 +#: part/templates/part/part_base.html:509 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:512 +#: part/templates/part/part_base.html:526 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:564 +#: part/templates/part/part_base.html:578 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:660 +#: part/templates/part/part_base.html:674 msgid "Hide Part Details" msgstr "" @@ -5920,15 +6025,6 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" -#: part/templates/part/part_scheduling.html:13 -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:63 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:2043 templates/js/translated/pricing.js:537 -#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2516 -msgid "Date" -msgstr "Data" - #: part/templates/part/part_scheduling.html:14 msgid "Scheduled Quantity" msgstr "" @@ -5941,7 +6037,7 @@ msgstr "" msgid "Scheduling" msgstr "" -#: part/templates/part/part_sidebar.html:48 +#: part/templates/part/part_sidebar.html:53 msgid "Test Templates" msgstr "" @@ -5960,7 +6056,7 @@ msgstr "" #: part/templates/part/prices.html:25 stock/admin.py:106 #: stock/templates/stock/item_base.html:440 #: templates/js/translated/company.js:1039 -#: templates/js/translated/stock.js:1940 +#: templates/js/translated/stock.js:1935 msgid "Last Updated" msgstr "Ultimo aggiornamento" @@ -6023,8 +6119,8 @@ msgstr "" msgid "Add Sell Price Break" msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:639 -#: templates/js/translated/part.js:1373 templates/js/translated/part.js:1375 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:1644 templates/js/translated/part.js:1646 msgid "No Stock" msgstr "Nessuna giacenza" @@ -6087,27 +6183,32 @@ msgstr "Database sconosciuto" msgid "{title} v{version}" msgstr "" -#: part/views.py:109 +#: part/views.py:111 msgid "Match References" msgstr "" -#: part/views.py:354 +#: part/views.py:239 +#, python-brace-format +msgid "Can't import part {name} because there is no category assigned" +msgstr "" + +#: part/views.py:378 msgid "Part QR Code" msgstr "" -#: part/views.py:372 +#: part/views.py:396 msgid "Select Part Image" msgstr "" -#: part/views.py:398 +#: part/views.py:422 msgid "Updated part image" msgstr "" -#: part/views.py:401 +#: part/views.py:425 msgid "Part image not found" msgstr "" -#: part/views.py:493 +#: part/views.py:517 msgid "Part Pricing" msgstr "" @@ -6156,28 +6257,48 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:29 -#: plugin/builtin/integration/core_notifications.py:31 +#: plugin/builtin/integration/core_notifications.py:33 msgid "InvenTree contributors" msgstr "" -#: plugin/builtin/integration/core_notifications.py:30 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:32 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notificaton methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:37 -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:80 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:38 -#: plugin/builtin/integration/core_notifications.py:57 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:81 msgid "Allow sending of emails for event notifications" msgstr "" +#: plugin/builtin/integration/core_notifications.py:45 +msgid "Enable slack notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:46 +msgid "Allow sending of slack channel messages for event notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:51 +msgid "Slack incoming webhook url" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:52 +msgid "URL that is used to send messages to a slack channel" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:162 +msgid "Open link" +msgstr "" + #: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" @@ -6409,6 +6530,10 @@ msgstr "" msgid "Asset file description" msgstr "" +#: report/templates/report/inventree_bill_of_materials_report.html:133 +msgid "Materials needed" +msgstr "" + #: report/templates/report/inventree_build_order_base.html:146 msgid "Required For" msgstr "" @@ -6427,7 +6552,7 @@ msgstr "" #: templates/js/translated/build.js:1244 templates/js/translated/build.js:1745 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:121 templates/js/translated/order.js:3611 -#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:522 +#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:521 msgid "Serial Number" msgstr "" @@ -6459,8 +6584,9 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: stock/admin.py:87 templates/js/translated/stock.js:642 -#: templates/js/translated/stock.js:812 templates/js/translated/stock.js:2765 +#: stock/admin.py:87 templates/js/translated/part.js:749 +#: templates/js/translated/stock.js:641 templates/js/translated/stock.js:811 +#: templates/js/translated/stock.js:2760 msgid "Serial" msgstr "Seriale" @@ -6515,13 +6641,9 @@ msgstr "" msgid "Purchase Order ID" msgstr "" -#: stock/admin.py:107 templates/js/translated/stock.js:1910 -msgid "Stocktake" -msgstr "Inventario" - #: stock/admin.py:108 stock/models.py:764 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/stock.js:1924 +#: templates/js/translated/stock.js:1919 msgid "Expiry Date" msgstr "Data di Scadenza" @@ -6936,7 +7058,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2912 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2907 msgid "Install Stock Item" msgstr "" @@ -6944,7 +7066,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1561 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1560 msgid "Add Test Result" msgstr "" @@ -7117,10 +7239,6 @@ msgstr "" msgid "Stale" msgstr "" -#: stock/templates/stock/item_base.html:445 -msgid "Last Stocktake" -msgstr "Ultimo Inventario" - #: stock/templates/stock/item_base.html:449 msgid "No stocktake performed" msgstr "Nessun inventario eseguito" @@ -7394,7 +7512,8 @@ msgstr "" #: templates/InvenTree/notifications/notifications.html:10 #: templates/InvenTree/notifications/sidebar.html:5 -#: templates/InvenTree/settings/sidebar.html:17 templates/notifications.html:5 +#: templates/InvenTree/settings/sidebar.html:17 +#: templates/InvenTree/settings/sidebar.html:35 templates/notifications.html:5 msgid "Notifications" msgstr "" @@ -7475,6 +7594,14 @@ msgstr "" msgid "Open in new tab" msgstr "" +#: templates/InvenTree/settings/notifications.html:9 +msgid "Global Notification Settings" +msgstr "" + +#: templates/InvenTree/settings/notifications.html:18 +msgid "Slug" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "Impostazioni articolo" @@ -7492,7 +7619,7 @@ msgid "Part Parameter Templates" msgstr "" #: templates/InvenTree/settings/plugin.html:10 -#: templates/InvenTree/settings/sidebar.html:55 +#: templates/InvenTree/settings/sidebar.html:57 msgid "Plugin Settings" msgstr "" @@ -7501,7 +7628,7 @@ msgid "Changing the settings below require you to immediately restart the server msgstr "" #: templates/InvenTree/settings/plugin.html:38 -#: templates/InvenTree/settings/sidebar.html:57 +#: templates/InvenTree/settings/sidebar.html:59 msgid "Plugins" msgstr "" @@ -7669,67 +7796,67 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:117 +#: templates/InvenTree/settings/settings.html:118 msgid "Edit Plugin Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:119 +#: templates/InvenTree/settings/settings.html:120 msgid "Edit Notification Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:122 +#: templates/InvenTree/settings/settings.html:123 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:124 +#: templates/InvenTree/settings/settings.html:125 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:214 +#: templates/InvenTree/settings/settings.html:215 msgid "No category parameter templates found" msgstr "Nessun parametro di categoria trovato" -#: templates/InvenTree/settings/settings.html:236 -#: templates/InvenTree/settings/settings.html:361 +#: templates/InvenTree/settings/settings.html:237 +#: templates/InvenTree/settings/settings.html:362 msgid "Edit Template" msgstr "" -#: templates/InvenTree/settings/settings.html:237 -#: templates/InvenTree/settings/settings.html:362 +#: templates/InvenTree/settings/settings.html:238 +#: templates/InvenTree/settings/settings.html:363 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:277 +#: templates/InvenTree/settings/settings.html:278 msgid "Create Category Parameter Template" msgstr "Crea Template Parametro Categoria" -#: templates/InvenTree/settings/settings.html:322 +#: templates/InvenTree/settings/settings.html:323 msgid "Delete Category Parameter Template" msgstr "Elimina Modello Parametro Categoria" -#: templates/InvenTree/settings/settings.html:334 +#: templates/InvenTree/settings/settings.html:335 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:338 +#: templates/InvenTree/settings/settings.html:339 #: templates/js/translated/news.js:29 #: templates/js/translated/notification.js:36 msgid "ID" msgstr "" -#: templates/InvenTree/settings/settings.html:380 +#: templates/InvenTree/settings/settings.html:381 msgid "Create Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:399 +#: templates/InvenTree/settings/settings.html:400 msgid "Edit Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:413 +#: templates/InvenTree/settings/settings.html:414 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/InvenTree/settings/settings.html:421 +#: templates/InvenTree/settings/settings.html:422 msgid "Delete Part Parameter Template" msgstr "" @@ -7758,12 +7885,12 @@ msgid "Search Settings" msgstr "Impostazioni di ricerca" #: templates/InvenTree/settings/sidebar.html:19 -#: templates/InvenTree/settings/sidebar.html:37 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Label Printing" msgstr "" #: templates/InvenTree/settings/sidebar.html:21 -#: templates/InvenTree/settings/sidebar.html:39 +#: templates/InvenTree/settings/sidebar.html:41 msgid "Reporting" msgstr "" @@ -7775,7 +7902,7 @@ msgstr "" msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:43 +#: templates/InvenTree/settings/sidebar.html:45 msgid "Categories" msgstr "" @@ -7945,64 +8072,64 @@ msgstr "" msgid "Do you really want to remove the selected email address?" msgstr "" -#: templates/InvenTree/settings/user_display.html:28 +#: templates/InvenTree/settings/user_display.html:29 msgid "Theme Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:38 +#: templates/InvenTree/settings/user_display.html:39 msgid "Select theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:49 +#: templates/InvenTree/settings/user_display.html:50 msgid "Set Theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:57 +#: templates/InvenTree/settings/user_display.html:58 msgid "Language Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:66 +#: templates/InvenTree/settings/user_display.html:67 msgid "Select language" msgstr "" -#: templates/InvenTree/settings/user_display.html:82 +#: templates/InvenTree/settings/user_display.html:83 #, python-format msgid "%(lang_translated)s%% translated" msgstr "" -#: templates/InvenTree/settings/user_display.html:84 +#: templates/InvenTree/settings/user_display.html:85 msgid "No translations available" msgstr "" -#: templates/InvenTree/settings/user_display.html:91 +#: templates/InvenTree/settings/user_display.html:92 msgid "Set Language" msgstr "" -#: templates/InvenTree/settings/user_display.html:94 +#: templates/InvenTree/settings/user_display.html:95 msgid "Some languages are not complete" msgstr "" -#: templates/InvenTree/settings/user_display.html:96 +#: templates/InvenTree/settings/user_display.html:97 msgid "Show only sufficent" msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "and hidden." msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "Show them too" msgstr "" -#: templates/InvenTree/settings/user_display.html:105 +#: templates/InvenTree/settings/user_display.html:106 msgid "Help the translation efforts!" msgstr "" -#: templates/InvenTree/settings/user_display.html:106 +#: templates/InvenTree/settings/user_display.html:107 msgid "Native language translation of the web application is community contributed via crowdin. Contributions are welcomed and encouraged." msgstr "" -#: templates/InvenTree/settings/user_display.html:107 +#: templates/InvenTree/settings/user_display.html:108 msgid "InvenTree Translation Project" msgstr "" @@ -8080,7 +8207,7 @@ msgstr "Conferma l'indirizzo e-mail" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:646 +#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:649 msgid "Confirm" msgstr "Conferma" @@ -8313,7 +8440,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 -#: templates/js/translated/part.js:2445 +#: templates/js/translated/part.js:2726 msgid "Minimum Quantity" msgstr "Quantità minima" @@ -8466,7 +8593,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1089 +#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1088 msgid "Remove stock item" msgstr "" @@ -8548,16 +8675,6 @@ msgstr "Chiudi" msgid "Download BOM Template" msgstr "" -#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 -#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 -msgid "Format" -msgstr "Formato" - -#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 -#: templates/js/translated/order.js:999 -msgid "Select file format" -msgstr "" - #: templates/js/translated/bom.js:320 msgid "Multi Level BOM" msgstr "" @@ -8688,7 +8805,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:1145 templates/js/translated/build.js:1923 -#: templates/js/translated/part.js:790 templates/js/translated/part.js:1572 +#: templates/js/translated/part.js:1061 templates/js/translated/part.js:1843 msgid "Includes variant stock" msgstr "" @@ -8773,13 +8890,13 @@ msgstr "" msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:317 templates/js/translated/stock.js:95 -#: templates/js/translated/stock.js:237 +#: templates/js/translated/build.js:317 templates/js/translated/stock.js:94 +#: templates/js/translated/stock.js:236 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:319 templates/js/translated/stock.js:97 -#: templates/js/translated/stock.js:239 +#: templates/js/translated/build.js:319 templates/js/translated/stock.js:96 +#: templates/js/translated/stock.js:238 msgid "Latest serial number" msgstr "" @@ -8987,9 +9104,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1466 -#: templates/js/translated/part.js:2003 templates/js/translated/stock.js:1725 -#: templates/js/translated/stock.js:2428 +#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1737 +#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1724 +#: templates/js/translated/stock.js:2423 msgid "Select" msgstr "" @@ -9001,7 +9118,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2695 +#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2690 msgid "No user information" msgstr "" @@ -9074,34 +9191,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:652 -#: templates/js/translated/company.js:913 templates/js/translated/part.js:661 -#: templates/js/translated/part.js:747 +#: templates/js/translated/company.js:913 templates/js/translated/part.js:664 +#: templates/js/translated/part.js:1018 msgid "Template part" msgstr "" #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:917 templates/js/translated/part.js:665 -#: templates/js/translated/part.js:751 +#: templates/js/translated/company.js:917 templates/js/translated/part.js:668 +#: templates/js/translated/part.js:1022 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:784 templates/js/translated/part.js:870 +#: templates/js/translated/company.js:784 templates/js/translated/part.js:1141 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:821 templates/js/translated/part.js:912 +#: templates/js/translated/company.js:821 templates/js/translated/part.js:1183 msgid "Edit parameter" msgstr "Modifica parametro" -#: templates/js/translated/company.js:822 templates/js/translated/part.js:913 +#: templates/js/translated/company.js:822 templates/js/translated/part.js:1184 msgid "Delete parameter" msgstr "Elimina il parametro" -#: templates/js/translated/company.js:841 templates/js/translated/part.js:930 +#: templates/js/translated/company.js:841 templates/js/translated/part.js:1201 msgid "Edit Parameter" msgstr "Modifica parametro" -#: templates/js/translated/company.js:852 templates/js/translated/part.js:942 +#: templates/js/translated/company.js:852 templates/js/translated/part.js:1213 msgid "Delete Parameter" msgstr "Elimina Parametri" @@ -9181,61 +9298,61 @@ msgstr "Cancella tutti i filtri" msgid "Create filter" msgstr "Crea filtro" -#: templates/js/translated/forms.js:369 templates/js/translated/forms.js:384 -#: templates/js/translated/forms.js:398 templates/js/translated/forms.js:412 +#: templates/js/translated/forms.js:372 templates/js/translated/forms.js:387 +#: templates/js/translated/forms.js:401 templates/js/translated/forms.js:415 msgid "Action Prohibited" msgstr "Azione Vietata" -#: templates/js/translated/forms.js:371 +#: templates/js/translated/forms.js:374 msgid "Create operation not allowed" msgstr "Crea operazione non consentita" -#: templates/js/translated/forms.js:386 +#: templates/js/translated/forms.js:389 msgid "Update operation not allowed" msgstr "Operazione di aggiornamento non consentita" -#: templates/js/translated/forms.js:400 +#: templates/js/translated/forms.js:403 msgid "Delete operation not allowed" msgstr "Operazione di eliminazione non consentita" -#: templates/js/translated/forms.js:414 +#: templates/js/translated/forms.js:417 msgid "View operation not allowed" msgstr "Mostra operazione non consentita" -#: templates/js/translated/forms.js:672 +#: templates/js/translated/forms.js:675 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:773 +#: templates/js/translated/forms.js:776 msgid "Enter a valid number" msgstr "Inserisci un numero valido" -#: templates/js/translated/forms.js:1266 templates/modals.html:19 +#: templates/js/translated/forms.js:1269 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1703 +#: templates/js/translated/forms.js:1706 msgid "No results found" msgstr "Nessun risultato trovato" -#: templates/js/translated/forms.js:1919 templates/search.html:29 +#: templates/js/translated/forms.js:1922 templates/search.html:29 msgid "Searching" msgstr "Ricerca" -#: templates/js/translated/forms.js:2172 +#: templates/js/translated/forms.js:2175 msgid "Clear input" msgstr "Cancella input" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:2640 +#: templates/js/translated/forms.js:2643 msgid "Select Columns" msgstr "" @@ -9256,7 +9373,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1113 +#: templates/js/translated/stock.js:1112 msgid "Select Stock Items" msgstr "" @@ -9590,7 +9707,7 @@ msgstr "" msgid "Quantity to receive" msgstr "Quantità da ricevere" -#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2184 +#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2179 msgid "Stock Status" msgstr "Stato giacenza" @@ -9614,7 +9731,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1982 templates/js/translated/part.js:983 +#: templates/js/translated/order.js:1982 templates/js/translated/part.js:1254 msgid "No purchase orders found" msgstr "" @@ -9647,8 +9764,8 @@ msgstr "" msgid "Total" msgstr "Totale" -#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1085 -#: templates/js/translated/part.js:1137 +#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1356 +#: templates/js/translated/part.js:1408 msgid "Total Quantity" msgstr "" @@ -9666,11 +9783,11 @@ msgid "Total Price" msgstr "Prezzo Totale" #: templates/js/translated/order.js:2388 templates/js/translated/order.js:3900 -#: templates/js/translated/part.js:1121 +#: templates/js/translated/part.js:1392 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1166 +#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1437 msgid "Receive line item" msgstr "" @@ -9791,7 +9908,7 @@ msgid "Delete Stock Allocation" msgstr "Elimina posizione giacenza" #: templates/js/translated/order.js:3623 templates/js/translated/order.js:3712 -#: templates/js/translated/stock.js:1641 +#: templates/js/translated/stock.js:1640 msgid "Shipped to customer" msgstr "Spedito al cliente" @@ -9835,334 +9952,358 @@ msgstr "" msgid "No matching lines" msgstr "" -#: templates/js/translated/part.js:52 +#: templates/js/translated/part.js:55 msgid "Part Attributes" msgstr "Attributi Articolo" -#: templates/js/translated/part.js:56 +#: templates/js/translated/part.js:59 msgid "Part Creation Options" msgstr "" -#: templates/js/translated/part.js:60 +#: templates/js/translated/part.js:63 msgid "Part Duplication Options" msgstr "" -#: templates/js/translated/part.js:64 +#: templates/js/translated/part.js:67 msgid "Supplier Options" msgstr "Opzioni Fornitore" -#: templates/js/translated/part.js:78 +#: templates/js/translated/part.js:81 msgid "Add Part Category" msgstr "Aggiungi Categoria Articolo" -#: templates/js/translated/part.js:168 +#: templates/js/translated/part.js:171 msgid "Create Initial Stock" msgstr "Crea giacenza iniziale" -#: templates/js/translated/part.js:169 +#: templates/js/translated/part.js:172 msgid "Create an initial stock item for this part" msgstr "Crea una giacenza iniziale per quest'articolo" -#: templates/js/translated/part.js:176 +#: templates/js/translated/part.js:179 msgid "Initial Stock Quantity" msgstr "Quantità iniziale" -#: templates/js/translated/part.js:177 +#: templates/js/translated/part.js:180 msgid "Specify initial stock quantity for this part" msgstr "" -#: templates/js/translated/part.js:184 +#: templates/js/translated/part.js:187 msgid "Select destination stock location" msgstr "Selezione la posizione di destinazione della giacenza" -#: templates/js/translated/part.js:202 +#: templates/js/translated/part.js:205 msgid "Copy Category Parameters" msgstr "Copia Parametri Categoria" -#: templates/js/translated/part.js:203 +#: templates/js/translated/part.js:206 msgid "Copy parameter templates from selected part category" msgstr "" -#: templates/js/translated/part.js:211 +#: templates/js/translated/part.js:214 msgid "Add Supplier Data" msgstr "Aggiungi Dati Fornitore" -#: templates/js/translated/part.js:212 +#: templates/js/translated/part.js:215 msgid "Create initial supplier data for this part" msgstr "" -#: templates/js/translated/part.js:268 +#: templates/js/translated/part.js:271 msgid "Copy Image" msgstr "Copia immagine" -#: templates/js/translated/part.js:269 +#: templates/js/translated/part.js:272 msgid "Copy image from original part" msgstr "Copia immagine dall'articolo originale" -#: templates/js/translated/part.js:277 +#: templates/js/translated/part.js:280 msgid "Copy bill of materials from original part" msgstr "" -#: templates/js/translated/part.js:284 +#: templates/js/translated/part.js:287 msgid "Copy Parameters" msgstr "Copia parametri" -#: templates/js/translated/part.js:285 +#: templates/js/translated/part.js:288 msgid "Copy parameter data from original part" msgstr "" -#: templates/js/translated/part.js:298 +#: templates/js/translated/part.js:301 msgid "Parent part category" msgstr "Categoria articolo principale" -#: templates/js/translated/part.js:313 templates/js/translated/stock.js:122 +#: templates/js/translated/part.js:316 templates/js/translated/stock.js:121 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:329 +#: templates/js/translated/part.js:332 msgid "Edit Part Category" msgstr "Modifica Categoria Articoli" -#: templates/js/translated/part.js:342 +#: templates/js/translated/part.js:345 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:347 +#: templates/js/translated/part.js:350 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:359 msgid "Delete Part Category" msgstr "Elimina categoria" -#: templates/js/translated/part.js:360 +#: templates/js/translated/part.js:363 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:368 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:394 +#: templates/js/translated/part.js:397 msgid "Edit Part" msgstr "Modifica l'articolo" -#: templates/js/translated/part.js:396 +#: templates/js/translated/part.js:399 msgid "Part edited" msgstr "Articolo modificato" -#: templates/js/translated/part.js:407 +#: templates/js/translated/part.js:410 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:459 +#: templates/js/translated/part.js:462 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:460 +#: templates/js/translated/part.js:463 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:477 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:476 +#: templates/js/translated/part.js:479 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:477 +#: templates/js/translated/part.js:480 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:478 +#: templates/js/translated/part.js:481 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:485 +#: templates/js/translated/part.js:488 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:521 +#: templates/js/translated/part.js:524 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:523 +#: templates/js/translated/part.js:526 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:531 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:530 +#: templates/js/translated/part.js:533 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:547 +#: templates/js/translated/part.js:550 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:560 msgid "Validate Bill of Materials" msgstr "Convalida la distinta dei materiali" -#: templates/js/translated/part.js:560 +#: templates/js/translated/part.js:563 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:585 +#: templates/js/translated/part.js:588 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1554 +#: templates/js/translated/part.js:612 templates/js/translated/part.js:1825 #: templates/js/translated/table_filters.js:488 msgid "Low stock" msgstr "In esaurimento" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:622 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:653 templates/js/translated/part.js:739 +#: templates/js/translated/part.js:656 templates/js/translated/part.js:1010 msgid "Trackable part" msgstr "Parte tracciabile" -#: templates/js/translated/part.js:657 templates/js/translated/part.js:743 +#: templates/js/translated/part.js:660 templates/js/translated/part.js:1014 msgid "Virtual part" msgstr "Parte virtuale" -#: templates/js/translated/part.js:669 +#: templates/js/translated/part.js:672 msgid "Subscribed part" msgstr "Parte sottoscritta" -#: templates/js/translated/part.js:673 +#: templates/js/translated/part.js:676 msgid "Salable part" msgstr "Parte vendibile" -#: templates/js/translated/part.js:815 +#: templates/js/translated/part.js:761 +msgid "Stock item has not been checked recently" +msgstr "" + +#: templates/js/translated/part.js:769 +msgid "Update item" +msgstr "" + +#: templates/js/translated/part.js:770 +msgid "Delete item" +msgstr "" + +#: templates/js/translated/part.js:871 +msgid "No stocktake information available" +msgstr "" + +#: templates/js/translated/part.js:910 templates/js/translated/part.js:933 +msgid "Edit Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:914 templates/js/translated/part.js:945 +msgid "Delete Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:1086 msgid "No variants found" msgstr "Nessuna variante trovata" -#: templates/js/translated/part.js:1236 +#: templates/js/translated/part.js:1507 msgid "Delete part relationship" msgstr "Elimina relazione tra i componenti" -#: templates/js/translated/part.js:1260 +#: templates/js/translated/part.js:1531 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1327 templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1598 templates/js/translated/part.js:1936 msgid "No parts found" msgstr "Nessun articolo trovato" -#: templates/js/translated/part.js:1521 +#: templates/js/translated/part.js:1792 msgid "No category" msgstr "Nessuna categoria" -#: templates/js/translated/part.js:1552 +#: templates/js/translated/part.js:1823 msgid "No stock" msgstr "" -#: templates/js/translated/part.js:1576 +#: templates/js/translated/part.js:1847 msgid "Allocated to build orders" msgstr "" -#: templates/js/translated/part.js:1580 +#: templates/js/translated/part.js:1851 msgid "Allocated to sales orders" msgstr "" -#: templates/js/translated/part.js:1679 templates/js/translated/part.js:1922 -#: templates/js/translated/stock.js:2387 +#: templates/js/translated/part.js:1960 templates/js/translated/part.js:2203 +#: templates/js/translated/stock.js:2382 msgid "Display as list" msgstr "Visualizza come elenco" -#: templates/js/translated/part.js:1695 +#: templates/js/translated/part.js:1976 msgid "Display as grid" msgstr "Visualizza come griglia" -#: templates/js/translated/part.js:1761 +#: templates/js/translated/part.js:2042 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1766 +#: templates/js/translated/part.js:2047 msgid "Set Part Category" msgstr "Imposta categoria articolo" -#: templates/js/translated/part.js:1771 +#: templates/js/translated/part.js:2052 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1784 +#: templates/js/translated/part.js:2065 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1942 templates/js/translated/stock.js:2407 +#: templates/js/translated/part.js:2223 templates/js/translated/stock.js:2402 msgid "Display as tree" msgstr "Visualizza come struttura ad albero" -#: templates/js/translated/part.js:2022 +#: templates/js/translated/part.js:2303 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2038 +#: templates/js/translated/part.js:2319 msgid "Subscribed category" msgstr "Categoria sottoscritta" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2383 msgid "No test templates matching query" msgstr "Nessun modello di test corrispondente" -#: templates/js/translated/part.js:2153 templates/js/translated/stock.js:1338 +#: templates/js/translated/part.js:2434 templates/js/translated/stock.js:1337 msgid "Edit test result" msgstr "Modificare il risultato del test" -#: templates/js/translated/part.js:2154 templates/js/translated/stock.js:1339 -#: templates/js/translated/stock.js:1599 +#: templates/js/translated/part.js:2435 templates/js/translated/stock.js:1338 +#: templates/js/translated/stock.js:1598 msgid "Delete test result" msgstr "Cancellare il risultato del test" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2441 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2182 +#: templates/js/translated/part.js:2463 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2196 +#: templates/js/translated/part.js:2477 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2277 templates/js/translated/part.js:2278 +#: templates/js/translated/part.js:2558 templates/js/translated/part.js:2559 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2280 +#: templates/js/translated/part.js:2561 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:2286 +#: templates/js/translated/part.js:2567 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:2336 +#: templates/js/translated/part.js:2617 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2623 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:2438 +#: templates/js/translated/part.js:2719 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2454 +#: templates/js/translated/part.js:2735 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:2499 +#: templates/js/translated/part.js:2780 msgid "Minimum Stock Level" msgstr "" @@ -10290,388 +10431,388 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:74 +#: templates/js/translated/stock.js:73 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:104 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:114 +#: templates/js/translated/stock.js:113 msgid "Parent stock location" msgstr "Posizione giacenza principale" -#: templates/js/translated/stock.js:148 +#: templates/js/translated/stock.js:147 msgid "Edit Stock Location" msgstr "Modifica Posizione Giacenza" -#: templates/js/translated/stock.js:163 +#: templates/js/translated/stock.js:162 msgid "New Stock Location" msgstr "Nuova posizione giacenza" -#: templates/js/translated/stock.js:177 +#: templates/js/translated/stock.js:176 msgid "Are you sure you want to delete this stock location?" msgstr "Sei sicuro di voler eliminare questa posizione?" -#: templates/js/translated/stock.js:184 +#: templates/js/translated/stock.js:183 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:193 +#: templates/js/translated/stock.js:192 msgid "Delete Stock Location" msgstr "Elimina Posizione di Giacenza" -#: templates/js/translated/stock.js:197 +#: templates/js/translated/stock.js:196 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:201 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:256 +#: templates/js/translated/stock.js:255 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:298 +#: templates/js/translated/stock.js:297 msgid "Enter initial quantity for this stock item" msgstr "Inserisci quantità iniziale per questo articolo in giacenza" -#: templates/js/translated/stock.js:304 +#: templates/js/translated/stock.js:303 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "Inserire i numeri di serie per la nuova giacenza (o lasciare vuoto)" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:368 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:389 +#: templates/js/translated/stock.js:388 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:405 +#: templates/js/translated/stock.js:404 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:410 +#: templates/js/translated/stock.js:409 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:431 +#: templates/js/translated/stock.js:430 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:481 +#: templates/js/translated/stock.js:480 msgid "Created new stock item" msgstr "Crea nuova allocazione magazzino" -#: templates/js/translated/stock.js:494 +#: templates/js/translated/stock.js:493 msgid "Created multiple stock items" msgstr "Creato più elementi stock" -#: templates/js/translated/stock.js:519 +#: templates/js/translated/stock.js:518 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:523 templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:522 templates/js/translated/stock.js:523 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:540 +#: templates/js/translated/stock.js:539 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:560 +#: templates/js/translated/stock.js:559 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:568 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:692 +#: templates/js/translated/stock.js:691 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:693 +#: templates/js/translated/stock.js:692 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:770 +#: templates/js/translated/stock.js:769 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:771 +#: templates/js/translated/stock.js:770 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:773 +#: templates/js/translated/stock.js:772 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:774 +#: templates/js/translated/stock.js:773 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:863 +#: templates/js/translated/stock.js:862 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:864 +#: templates/js/translated/stock.js:863 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:958 msgid "Transfer Stock" msgstr "Trasferisci giacenza" -#: templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:959 msgid "Move" msgstr "Sposta" -#: templates/js/translated/stock.js:966 +#: templates/js/translated/stock.js:965 msgid "Count Stock" msgstr "Conta giacenza" -#: templates/js/translated/stock.js:967 +#: templates/js/translated/stock.js:966 msgid "Count" msgstr "Conta" -#: templates/js/translated/stock.js:971 +#: templates/js/translated/stock.js:970 msgid "Remove Stock" msgstr "Rimuovi giacenza" -#: templates/js/translated/stock.js:972 +#: templates/js/translated/stock.js:971 msgid "Take" msgstr "Prendi" -#: templates/js/translated/stock.js:976 +#: templates/js/translated/stock.js:975 msgid "Add Stock" msgstr "Aggiungi giacenza" -#: templates/js/translated/stock.js:977 users/models.py:220 +#: templates/js/translated/stock.js:976 users/models.py:221 msgid "Add" msgstr "Aggiungi" -#: templates/js/translated/stock.js:981 +#: templates/js/translated/stock.js:980 msgid "Delete Stock" msgstr "Elimina Stock" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Specify stock quantity" msgstr "Specificare la quantità di magazzino" -#: templates/js/translated/stock.js:1114 +#: templates/js/translated/stock.js:1113 msgid "You must select at least one available stock item" msgstr "Devi selezionare almeno un articolo disponibile" -#: templates/js/translated/stock.js:1141 +#: templates/js/translated/stock.js:1140 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1277 +#: templates/js/translated/stock.js:1276 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1279 +#: templates/js/translated/stock.js:1278 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1284 +#: templates/js/translated/stock.js:1283 msgid "NO RESULT" msgstr "NESSUN RISULTATO" -#: templates/js/translated/stock.js:1331 +#: templates/js/translated/stock.js:1330 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1334 +#: templates/js/translated/stock.js:1333 msgid "Add test result" msgstr "Aggiungi risultato test" -#: templates/js/translated/stock.js:1360 +#: templates/js/translated/stock.js:1359 msgid "No test results found" msgstr "Nessun risultato di prova trovato" -#: templates/js/translated/stock.js:1417 +#: templates/js/translated/stock.js:1416 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1582 +#: templates/js/translated/stock.js:1581 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1604 +#: templates/js/translated/stock.js:1603 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1633 +#: templates/js/translated/stock.js:1632 msgid "In production" msgstr "In produzione" -#: templates/js/translated/stock.js:1637 +#: templates/js/translated/stock.js:1636 msgid "Installed in Stock Item" msgstr "Installato nell'elemento stock" -#: templates/js/translated/stock.js:1645 +#: templates/js/translated/stock.js:1644 msgid "Assigned to Sales Order" msgstr "Assegnato all'ordine di vendita" -#: templates/js/translated/stock.js:1651 +#: templates/js/translated/stock.js:1650 msgid "No stock location set" msgstr "Nessuna giacenza impostata" -#: templates/js/translated/stock.js:1820 +#: templates/js/translated/stock.js:1815 msgid "Stock item is in production" msgstr "L'articolo di magazzino è in produzione" -#: templates/js/translated/stock.js:1825 +#: templates/js/translated/stock.js:1820 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1828 +#: templates/js/translated/stock.js:1823 msgid "Stock item assigned to customer" msgstr "Articolo stock assegnato al cliente" -#: templates/js/translated/stock.js:1831 +#: templates/js/translated/stock.js:1826 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1833 +#: templates/js/translated/stock.js:1828 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1835 +#: templates/js/translated/stock.js:1830 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1838 +#: templates/js/translated/stock.js:1833 msgid "Stock item has been installed in another item" msgstr "L'elemento stock è stato installato in un altro articolo" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1837 msgid "Stock item has expired" msgstr "L'articolo stock è scaduto" -#: templates/js/translated/stock.js:1844 +#: templates/js/translated/stock.js:1839 msgid "Stock item will expire soon" msgstr "Articolo in giacenza prossimo alla scadenza" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1846 msgid "Stock item has been rejected" msgstr "L'articolo stock è stato rifiutato" -#: templates/js/translated/stock.js:1853 +#: templates/js/translated/stock.js:1848 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1855 +#: templates/js/translated/stock.js:1850 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1859 +#: templates/js/translated/stock.js:1854 #: templates/js/translated/table_filters.js:216 msgid "Depleted" msgstr "Esaurito" -#: templates/js/translated/stock.js:1989 +#: templates/js/translated/stock.js:1984 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2026 +#: templates/js/translated/stock.js:2021 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2199 +#: templates/js/translated/stock.js:2194 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2213 +#: templates/js/translated/stock.js:2208 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2214 +#: templates/js/translated/stock.js:2209 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2446 +#: templates/js/translated/stock.js:2441 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2536 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2557 +#: templates/js/translated/stock.js:2552 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2579 +#: templates/js/translated/stock.js:2574 msgid "Location no longer exists" msgstr "La posizione non esiste più" -#: templates/js/translated/stock.js:2598 +#: templates/js/translated/stock.js:2593 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2617 +#: templates/js/translated/stock.js:2612 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2635 +#: templates/js/translated/stock.js:2630 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2658 +#: templates/js/translated/stock.js:2653 msgid "Added" msgstr "Aggiunto" -#: templates/js/translated/stock.js:2666 +#: templates/js/translated/stock.js:2661 msgid "Removed" msgstr "Rimosso" -#: templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2737 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2793 templates/js/translated/stock.js:2829 +#: templates/js/translated/stock.js:2788 templates/js/translated/stock.js:2824 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2845 +#: templates/js/translated/stock.js:2840 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2866 +#: templates/js/translated/stock.js:2861 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2867 +#: templates/js/translated/stock.js:2862 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2869 +#: templates/js/translated/stock.js:2864 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2870 +#: templates/js/translated/stock.js:2865 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:2866 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2872 +#: templates/js/translated/stock.js:2867 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2885 +#: templates/js/translated/stock.js:2880 msgid "Select part to install" msgstr "" @@ -10696,7 +10837,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:92 -#: templates/js/translated/table_filters.js:516 +#: templates/js/translated/table_filters.js:520 msgid "Has Pricing" msgstr "" @@ -10912,6 +11053,10 @@ msgstr "" msgid "Purchasable" msgstr "Acquistabile" +#: templates/js/translated/table_filters.js:504 +msgid "Has stocktake entries" +msgstr "" + #: templates/js/translated/tables.js:70 msgid "Display calendar view" msgstr "Visualizzazione calendario" @@ -11206,35 +11351,35 @@ msgstr "Permessi" msgid "Important dates" msgstr "Date Importanti" -#: users/models.py:207 +#: users/models.py:208 msgid "Permission set" msgstr "Impostazione autorizzazioni" -#: users/models.py:215 +#: users/models.py:216 msgid "Group" msgstr "Gruppo" -#: users/models.py:218 +#: users/models.py:219 msgid "View" msgstr "Visualizza" -#: users/models.py:218 +#: users/models.py:219 msgid "Permission to view items" msgstr "Autorizzazione a visualizzare gli articoli" -#: users/models.py:220 +#: users/models.py:221 msgid "Permission to add items" msgstr "Autorizzazione ad aggiungere elementi" -#: users/models.py:222 +#: users/models.py:223 msgid "Change" msgstr "Modificare" -#: users/models.py:222 +#: users/models.py:223 msgid "Permissions to edit items" msgstr "Permessi per modificare gli elementi" -#: users/models.py:224 +#: users/models.py:225 msgid "Permission to delete items" msgstr "Autorizzazione ad eliminare gli elementi" diff --git a/InvenTree/locale/ja/LC_MESSAGES/django.po b/InvenTree/locale/ja/LC_MESSAGES/django.po index 03bf1c8e5b..eead707458 100644 --- a/InvenTree/locale/ja/LC_MESSAGES/django.po +++ b/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: 2022-12-30 20:46+0000\n" -"PO-Revision-Date: 2022-12-31 11:29\n" +"POT-Creation-Date: 2023-01-01 11:05+0000\n" +"PO-Revision-Date: 2023-01-01 11:26\n" "Last-Translator: \n" "Language-Team: Japanese\n" "Language: ja_JP\n" @@ -34,7 +34,7 @@ msgstr "日付を入力する" #: company/templates/company/sidebar.html:25 order/models.py:943 #: order/templates/order/po_sidebar.html:11 #: order/templates/order/so_sidebar.html:17 part/admin.py:27 -#: part/templates/part/part_sidebar.html:57 +#: part/models.py:2932 part/templates/part/part_sidebar.html:62 #: report/templates/report/inventree_build_order_base.html:172 #: stock/admin.py:103 stock/models.py:2061 stock/models.py:2169 #: stock/serializers.py:321 stock/serializers.py:454 stock/serializers.py:535 @@ -44,8 +44,8 @@ msgstr "日付を入力する" #: templates/js/translated/company.js:1023 #: templates/js/translated/order.js:2435 templates/js/translated/order.js:2569 #: templates/js/translated/order.js:3067 templates/js/translated/order.js:4004 -#: templates/js/translated/order.js:4385 templates/js/translated/stock.js:1413 -#: templates/js/translated/stock.js:2020 +#: templates/js/translated/order.js:4385 templates/js/translated/part.js:882 +#: templates/js/translated/stock.js:1412 templates/js/translated/stock.js:2015 msgid "Notes" msgstr "メモ" @@ -204,18 +204,18 @@ msgstr "添付ファイル" msgid "Select file to attach" msgstr "添付ファイルを選択" -#: InvenTree/models.py:412 common/models.py:2366 company/models.py:129 +#: InvenTree/models.py:412 common/models.py:2373 company/models.py:129 #: company/models.py:281 company/models.py:516 order/models.py:85 -#: order/models.py:1282 part/admin.py:25 part/models.py:865 +#: order/models.py:1282 part/admin.py:25 part/models.py:866 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: stock/admin.py:102 templates/js/translated/company.js:692 #: templates/js/translated/company.js:1012 -#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1615 +#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1886 msgid "Link" msgstr "リンク" -#: InvenTree/models.py:413 build/models.py:290 part/models.py:866 +#: InvenTree/models.py:413 build/models.py:290 part/models.py:867 #: stock/models.py:716 msgid "Link to external URL" msgstr "外部 サイト へのリンク" @@ -229,12 +229,13 @@ msgstr "コメント:" msgid "File comment" msgstr "ファイルコメント" -#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1810 -#: common/models.py:1811 common/models.py:2034 common/models.py:2035 -#: common/models.py:2296 common/models.py:2297 part/models.py:2948 -#: part/models.py:2968 plugin/models.py:264 plugin/models.py:265 +#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1817 +#: common/models.py:1818 common/models.py:2041 common/models.py:2042 +#: common/models.py:2303 common/models.py:2304 part/models.py:2940 +#: part/models.py:3026 part/models.py:3046 plugin/models.py:264 +#: plugin/models.py:265 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2689 +#: templates/js/translated/stock.js:2684 msgid "User" msgstr "ユーザー" @@ -271,19 +272,20 @@ msgstr "ファイル名の変更に失敗しました" msgid "Invalid choice" msgstr "無効な選択です" -#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2020 -#: company/models.py:363 label/models.py:101 part/models.py:809 -#: part/models.py:3123 plugin/models.py:94 report/models.py:152 +#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2027 +#: company/models.py:363 label/models.py:101 part/models.py:810 +#: part/models.py:3201 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 +#: templates/InvenTree/settings/notifications.html:17 #: templates/InvenTree/settings/plugin.html:60 #: templates/InvenTree/settings/plugin.html:104 #: templates/InvenTree/settings/plugin_settings.html:23 -#: templates/InvenTree/settings/settings.html:344 +#: templates/InvenTree/settings/settings.html:345 #: templates/js/translated/company.js:581 #: templates/js/translated/company.js:794 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:711 templates/js/translated/part.js:880 -#: templates/js/translated/part.js:2010 templates/js/translated/stock.js:2434 +#: templates/js/translated/part.js:982 templates/js/translated/part.js:1151 +#: templates/js/translated/part.js:2291 templates/js/translated/stock.js:2429 msgid "Name" msgstr "お名前" @@ -292,24 +294,25 @@ msgstr "お名前" #: company/models.py:522 company/templates/company/company_base.html:72 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:108 label/models.py:108 -#: order/models.py:83 part/admin.py:141 part/admin.py:222 part/models.py:832 -#: part/models.py:3132 part/templates/part/category.html:75 +#: order/models.py:83 part/admin.py:174 part/admin.py:255 part/models.py:833 +#: part/models.py:3210 part/templates/part/category.html:75 #: part/templates/part/part_base.html:172 #: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/admin.py:25 stock/templates/stock/location.html:117 +#: templates/InvenTree/settings/notifications.html:19 #: templates/InvenTree/settings/plugin_settings.html:28 -#: templates/InvenTree/settings/settings.html:355 +#: templates/InvenTree/settings/settings.html:356 #: templates/js/translated/bom.js:592 templates/js/translated/bom.js:895 #: templates/js/translated/build.js:2596 templates/js/translated/company.js:445 #: templates/js/translated/company.js:703 #: templates/js/translated/company.js:987 templates/js/translated/order.js:2030 #: templates/js/translated/order.js:2267 templates/js/translated/order.js:2845 -#: templates/js/translated/part.js:773 templates/js/translated/part.js:1223 -#: templates/js/translated/part.js:1497 templates/js/translated/part.js:2046 -#: templates/js/translated/part.js:2121 templates/js/translated/stock.js:1787 -#: templates/js/translated/stock.js:2466 templates/js/translated/stock.js:2526 +#: templates/js/translated/part.js:1044 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1768 templates/js/translated/part.js:2327 +#: templates/js/translated/part.js:2402 templates/js/translated/stock.js:1782 +#: templates/js/translated/stock.js:2461 templates/js/translated/stock.js:2521 msgid "Description" msgstr "説明" @@ -322,7 +325,7 @@ msgid "parent" msgstr "親" #: InvenTree/models.py:580 InvenTree/models.py:581 -#: templates/js/translated/part.js:2055 templates/js/translated/stock.js:2475 +#: templates/js/translated/part.js:2336 templates/js/translated/stock.js:2470 msgid "Path" msgstr "" @@ -354,7 +357,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:58 part/models.py:3468 +#: InvenTree/serializers.py:58 part/models.py:3546 msgid "Must be a valid number" msgstr "有効な数字でなければなりません" @@ -421,107 +424,107 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:639 +#: InvenTree/settings.py:642 msgid "Czech" msgstr "" -#: InvenTree/settings.py:640 +#: InvenTree/settings.py:643 msgid "Danish" msgstr "" -#: InvenTree/settings.py:641 +#: InvenTree/settings.py:644 msgid "German" msgstr "ドイツ語" -#: InvenTree/settings.py:642 +#: InvenTree/settings.py:645 msgid "Greek" msgstr "ギリシャ語" -#: InvenTree/settings.py:643 +#: InvenTree/settings.py:646 msgid "English" msgstr "英語" -#: InvenTree/settings.py:644 +#: InvenTree/settings.py:647 msgid "Spanish" msgstr "スペイン語" -#: InvenTree/settings.py:645 +#: InvenTree/settings.py:648 msgid "Spanish (Mexican)" msgstr "スペイン語(メキシコ)" -#: InvenTree/settings.py:646 +#: InvenTree/settings.py:649 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:647 +#: InvenTree/settings.py:650 msgid "French" msgstr "フランス語" -#: InvenTree/settings.py:648 +#: InvenTree/settings.py:651 msgid "Hebrew" msgstr "ヘブライ語" -#: InvenTree/settings.py:649 +#: InvenTree/settings.py:652 msgid "Hungarian" msgstr "ハンガリー語" -#: InvenTree/settings.py:650 +#: InvenTree/settings.py:653 msgid "Italian" msgstr "イタリア語" -#: InvenTree/settings.py:651 +#: InvenTree/settings.py:654 msgid "Japanese" msgstr "日本語" -#: InvenTree/settings.py:652 +#: InvenTree/settings.py:655 msgid "Korean" msgstr "韓国語" -#: InvenTree/settings.py:653 +#: InvenTree/settings.py:656 msgid "Dutch" msgstr "オランダ語" -#: InvenTree/settings.py:654 +#: InvenTree/settings.py:657 msgid "Norwegian" msgstr "ノルウェー語" -#: InvenTree/settings.py:655 +#: InvenTree/settings.py:658 msgid "Polish" msgstr "ポーランド語" -#: InvenTree/settings.py:656 +#: InvenTree/settings.py:659 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:657 +#: InvenTree/settings.py:660 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:658 +#: InvenTree/settings.py:661 msgid "Russian" msgstr "ロシア語" -#: InvenTree/settings.py:659 +#: InvenTree/settings.py:662 msgid "Slovenian" msgstr "" -#: InvenTree/settings.py:660 +#: InvenTree/settings.py:663 msgid "Swedish" msgstr "スウェーデン語" -#: InvenTree/settings.py:661 +#: InvenTree/settings.py:664 msgid "Thai" msgstr "タイ語" -#: InvenTree/settings.py:662 +#: InvenTree/settings.py:665 msgid "Turkish" msgstr "トルコ語" -#: InvenTree/settings.py:663 +#: InvenTree/settings.py:666 msgid "Vietnamese" msgstr "ベトナム語" -#: InvenTree/settings.py:664 +#: InvenTree/settings.py:667 msgid "Chinese" msgstr "中国語" @@ -652,7 +655,7 @@ msgstr "親アイテムから分割する" msgid "Split child item" msgstr "子項目を分割" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2124 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2119 msgid "Merged stock items" msgstr "商品在庫をマージしました" @@ -756,7 +759,7 @@ msgstr "" #: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:141 -#: templates/InvenTree/settings/sidebar.html:47 +#: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:254 users/models.py:41 msgid "Build Orders" msgstr "" @@ -766,8 +769,9 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:155 order/models.py:241 order/models.py:651 -#: order/models.py:941 part/admin.py:224 part/models.py:3378 +#: order/models.py:941 part/admin.py:257 part/models.py:3456 #: part/templates/part/upload_bom.html:54 +#: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 #: templates/js/translated/bom.js:729 templates/js/translated/bom.js:905 @@ -793,13 +797,15 @@ msgstr "" #: build/models.py:180 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:684 #: order/models.py:1038 order/models.py:1149 order/models.py:1150 -#: part/models.py:381 part/models.py:2781 part/models.py:2894 -#: part/models.py:2909 part/models.py:2928 part/models.py:2946 -#: part/models.py:3045 part/models.py:3166 part/models.py:3258 -#: part/models.py:3343 part/models.py:3659 part/serializers.py:853 -#: part/templates/part/part_app_base.html:8 +#: part/models.py:382 part/models.py:2799 part/models.py:2912 +#: part/models.py:2972 part/models.py:2987 part/models.py:3006 +#: part/models.py:3024 part/models.py:3123 part/models.py:3244 +#: part/models.py:3336 part/models.py:3421 part/models.py:3737 +#: part/serializers.py:894 part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 +#: report/templates/report/inventree_bill_of_materials_report.html:110 +#: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_base.html:109 #: report/templates/report/inventree_po_report.html:89 #: report/templates/report/inventree_so_report.html:90 stock/serializers.py:90 @@ -819,12 +825,12 @@ msgstr "" #: templates/js/translated/order.js:1172 templates/js/translated/order.js:1676 #: templates/js/translated/order.js:2252 templates/js/translated/order.js:3199 #: templates/js/translated/order.js:3595 templates/js/translated/order.js:3825 -#: templates/js/translated/part.js:1208 templates/js/translated/part.js:1280 -#: templates/js/translated/part.js:1474 templates/js/translated/pricing.js:102 -#: templates/js/translated/stock.js:618 templates/js/translated/stock.js:783 -#: templates/js/translated/stock.js:993 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2552 templates/js/translated/stock.js:2747 -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/part.js:1479 templates/js/translated/part.js:1551 +#: templates/js/translated/part.js:1745 templates/js/translated/pricing.js:102 +#: templates/js/translated/stock.js:617 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:992 templates/js/translated/stock.js:1738 +#: templates/js/translated/stock.js:2547 templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2879 msgid "Part" msgstr "パーツ" @@ -890,7 +896,7 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:252 order/models.py:87 part/models.py:1001 +#: build/models.py:252 order/models.py:87 part/models.py:1002 #: part/templates/part/part_base.html:318 templates/js/translated/order.js:2858 msgid "Creation Date" msgstr "作成日時" @@ -923,7 +929,7 @@ msgstr "" #: build/models.py:283 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:101 #: order/templates/order/order_base.html:185 -#: order/templates/order/sales_order_base.html:183 part/models.py:1005 +#: order/templates/order/sales_order_base.html:183 part/models.py:1006 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2658 templates/js/translated/order.js:2064 msgid "Responsible" @@ -936,7 +942,7 @@ msgstr "" #: build/models.py:289 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:188 -#: part/templates/part/part_base.html:376 stock/models.py:714 +#: part/templates/part/part_base.html:390 stock/models.py:714 #: stock/templates/stock/item_base.html:203 msgid "External Link" msgstr "" @@ -1011,8 +1017,8 @@ msgstr "パーツを割り当てるためにビルドする" #: templates/js/translated/order.js:107 templates/js/translated/order.js:3200 #: templates/js/translated/order.js:3502 templates/js/translated/order.js:3507 #: templates/js/translated/order.js:3602 templates/js/translated/order.js:3694 -#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 -#: templates/js/translated/stock.js:2625 +#: templates/js/translated/part.js:803 templates/js/translated/stock.js:618 +#: templates/js/translated/stock.js:783 templates/js/translated/stock.js:2620 msgid "Stock Item" msgstr "在庫商品" @@ -1022,12 +1028,13 @@ msgstr "" #: build/models.py:1364 build/serializers.py:192 #: build/templates/build/build_base.html:85 -#: build/templates/build/detail.html:34 common/models.py:1842 +#: build/templates/build/detail.html:34 common/models.py:1849 #: order/models.py:934 order/models.py:1460 order/serializers.py:1206 -#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:223 -#: part/forms.py:40 part/models.py:3359 +#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:256 +#: part/forms.py:40 part/models.py:2919 part/models.py:3437 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 +#: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_base.html:113 #: report/templates/report/inventree_po_report.html:90 #: report/templates/report/inventree_so_report.html:91 @@ -1049,13 +1056,14 @@ msgstr "" #: templates/js/translated/order.js:3201 templates/js/translated/order.js:3521 #: templates/js/translated/order.js:3608 templates/js/translated/order.js:3700 #: templates/js/translated/order.js:3847 templates/js/translated/order.js:4338 -#: templates/js/translated/part.js:1078 templates/js/translated/part.js:2568 +#: templates/js/translated/part.js:805 templates/js/translated/part.js:876 +#: templates/js/translated/part.js:1349 templates/js/translated/part.js:2849 #: templates/js/translated/pricing.js:114 #: templates/js/translated/pricing.js:207 #: templates/js/translated/pricing.js:255 -#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:490 -#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:814 -#: templates/js/translated/stock.js:2674 templates/js/translated/stock.js:2759 +#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:489 +#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:813 +#: templates/js/translated/stock.js:2669 templates/js/translated/stock.js:2754 msgid "Quantity" msgstr "数量" @@ -1097,8 +1105,8 @@ msgid "Enter quantity for build output" msgstr "" #: build/serializers.py:207 build/serializers.py:683 order/models.py:327 -#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:645 -#: part/serializers.py:1016 stock/models.py:574 stock/models.py:1312 +#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:686 +#: part/serializers.py:1057 stock/models.py:574 stock/models.py:1312 #: stock/serializers.py:294 msgid "Quantity must be greater than zero" msgstr "" @@ -1113,7 +1121,7 @@ msgstr "" #: build/serializers.py:231 order/serializers.py:463 order/serializers.py:1210 #: stock/serializers.py:303 templates/js/translated/order.js:1545 -#: templates/js/translated/stock.js:303 templates/js/translated/stock.js:491 +#: templates/js/translated/stock.js:302 templates/js/translated/stock.js:490 msgid "Serial Numbers" msgstr "" @@ -1146,9 +1154,10 @@ msgstr "" #: templates/js/translated/build.js:1759 templates/js/translated/order.js:1572 #: templates/js/translated/order.js:3514 templates/js/translated/order.js:3619 #: templates/js/translated/order.js:3627 templates/js/translated/order.js:3708 -#: templates/js/translated/part.js:183 templates/js/translated/stock.js:620 -#: templates/js/translated/stock.js:785 templates/js/translated/stock.js:995 -#: templates/js/translated/stock.js:1895 templates/js/translated/stock.js:2566 +#: templates/js/translated/part.js:186 templates/js/translated/part.js:804 +#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 +#: templates/js/translated/stock.js:994 templates/js/translated/stock.js:1890 +#: templates/js/translated/stock.js:2561 msgid "Location" msgstr "" @@ -1162,8 +1171,8 @@ msgstr "" #: stock/templates/stock/item_base.html:421 #: templates/js/translated/barcode.js:237 templates/js/translated/build.js:2630 #: templates/js/translated/order.js:1681 templates/js/translated/order.js:2034 -#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1870 -#: templates/js/translated/stock.js:2643 templates/js/translated/stock.js:2775 +#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:2638 templates/js/translated/stock.js:2770 msgid "Status" msgstr "ステータス" @@ -1239,8 +1248,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:595 build/serializers.py:640 part/models.py:3495 -#: part/models.py:3651 +#: build/serializers.py:595 build/serializers.py:640 part/models.py:3573 +#: part/models.py:3729 msgid "BOM Item" msgstr "" @@ -1406,7 +1415,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2670 templates/js/translated/order.js:2051 #: templates/js/translated/order.js:2382 templates/js/translated/order.js:2866 -#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1093 +#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1364 msgid "Target Date" msgstr "" @@ -1484,8 +1493,8 @@ msgstr "" #: stock/templates/stock/item_base.html:168 #: templates/js/translated/build.js:1250 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:1884 -#: templates/js/translated/stock.js:2782 +#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:1879 +#: templates/js/translated/stock.js:2777 #: templates/js/translated/table_filters.js:179 #: templates/js/translated/table_filters.js:270 msgid "Batch" @@ -1617,8 +1626,8 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:86 #: order/templates/order/sales_order_detail.html:140 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:210 -#: part/templates/part/part_sidebar.html:55 stock/templates/stock/item.html:117 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:233 +#: part/templates/part/part_sidebar.html:60 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" msgstr "" @@ -1635,7 +1644,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:316 +#: build/templates/build/index.html:18 part/templates/part/detail.html:339 msgid "New Build Order" msgstr "" @@ -1928,9 +1937,9 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1014 part/admin.py:41 part/models.py:3168 +#: common/models.py:1014 part/admin.py:41 part/models.py:3246 #: report/models.py:158 templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:504 +#: templates/js/translated/table_filters.js:508 msgid "Template" msgstr "テンプレート" @@ -1938,7 +1947,7 @@ msgstr "テンプレート" msgid "Parts are templates by default" msgstr "パーツはデフォルトのテンプレートです" -#: common/models.py:1021 part/admin.py:37 part/admin.py:229 part/models.py:957 +#: common/models.py:1021 part/admin.py:37 part/admin.py:262 part/models.py:958 #: templates/js/translated/bom.js:1595 #: templates/js/translated/table_filters.js:196 #: templates/js/translated/table_filters.js:467 @@ -1949,7 +1958,7 @@ msgstr "アセンブリ" msgid "Parts can be assembled from other components by default" msgstr "パーツはデフォルトで他のコンポーネントから組み立てることができます" -#: common/models.py:1028 part/admin.py:38 part/models.py:963 +#: common/models.py:1028 part/admin.py:38 part/models.py:964 #: templates/js/translated/table_filters.js:475 msgid "Component" msgstr "コンポーネント" @@ -1958,7 +1967,7 @@ msgstr "コンポーネント" msgid "Parts can be used as sub-components by default" msgstr "パーツはデフォルトでサブコンポーネントとして使用できます" -#: common/models.py:1035 part/admin.py:39 part/models.py:974 +#: common/models.py:1035 part/admin.py:39 part/models.py:975 msgid "Purchaseable" msgstr "購入可能" @@ -1966,7 +1975,7 @@ msgstr "購入可能" msgid "Parts are purchaseable by default" msgstr "パーツはデフォルトで購入可能です" -#: common/models.py:1042 part/admin.py:40 part/models.py:979 +#: common/models.py:1042 part/admin.py:40 part/models.py:980 #: templates/js/translated/table_filters.js:496 msgid "Salable" msgstr "" @@ -1975,10 +1984,10 @@ msgstr "" msgid "Parts are salable by default" msgstr "パーツはデフォルトで販売可能です" -#: common/models.py:1049 part/admin.py:42 part/models.py:969 +#: common/models.py:1049 part/admin.py:42 part/models.py:970 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:120 -#: templates/js/translated/table_filters.js:508 +#: templates/js/translated/table_filters.js:512 msgid "Trackable" msgstr "追跡可能" @@ -1986,10 +1995,10 @@ msgstr "追跡可能" msgid "Parts are trackable by default" msgstr "パーツはデフォルトで追跡可能です" -#: common/models.py:1056 part/admin.py:43 part/models.py:989 +#: common/models.py:1056 part/admin.py:43 part/models.py:990 #: part/templates/part/part_base.html:156 #: templates/js/translated/table_filters.js:42 -#: templates/js/translated/table_filters.js:512 +#: templates/js/translated/table_filters.js:516 msgid "Virtual" msgstr "" @@ -2417,7 +2426,7 @@ msgstr "" msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1461 common/models.py:1803 +#: common/models.py:1461 common/models.py:1810 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -2749,41 +2758,50 @@ msgstr "" msgid "Display part scheduling information" msgstr "" -#: common/models.py:1778 -msgid "Table String Length" +#: common/models.py:1778 part/templates/part/detail.html:61 +#: templates/js/translated/part.js:822 +msgid "Part Stocktake" msgstr "" #: common/models.py:1779 +msgid "Display part stocktake information" +msgstr "" + +#: common/models.py:1785 +msgid "Table String Length" +msgstr "" + +#: common/models.py:1786 msgid "Maximimum length limit for strings displayed in table views" msgstr "" -#: common/models.py:1843 +#: common/models.py:1850 msgid "Price break quantity" msgstr "" -#: common/models.py:1850 company/serializers.py:393 order/models.py:975 -#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1145 +#: common/models.py:1857 company/serializers.py:393 order/models.py:975 +#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1416 #: templates/js/translated/pricing.js:354 msgid "Price" msgstr "" -#: common/models.py:1851 +#: common/models.py:1858 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2011 common/models.py:2189 +#: common/models.py:2018 common/models.py:2196 msgid "Endpoint" msgstr "" -#: common/models.py:2012 +#: common/models.py:2019 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2021 +#: common/models.py:2028 msgid "Name for this webhook" msgstr "" -#: common/models.py:2026 part/admin.py:36 part/models.py:984 +#: common/models.py:2033 part/admin.py:36 part/models.py:985 #: plugin/models.py:100 templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:116 #: templates/js/translated/table_filters.js:336 @@ -2791,131 +2809,133 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:2027 +#: common/models.py:2034 msgid "Is this webhook active" msgstr "" -#: common/models.py:2041 +#: common/models.py:2048 msgid "Token" msgstr "" -#: common/models.py:2042 +#: common/models.py:2049 msgid "Token for access" msgstr "" -#: common/models.py:2049 +#: common/models.py:2056 msgid "Secret" msgstr "" -#: common/models.py:2050 +#: common/models.py:2057 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2156 +#: common/models.py:2163 msgid "Message ID" msgstr "メッセージ ID:" -#: common/models.py:2157 +#: common/models.py:2164 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2165 +#: common/models.py:2172 msgid "Host" msgstr "" -#: common/models.py:2166 +#: common/models.py:2173 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2173 +#: common/models.py:2180 msgid "Header" msgstr "" -#: common/models.py:2174 +#: common/models.py:2181 msgid "Header of this message" msgstr "" -#: common/models.py:2180 +#: common/models.py:2187 msgid "Body" msgstr "" -#: common/models.py:2181 +#: common/models.py:2188 msgid "Body of this message" msgstr "" -#: common/models.py:2190 +#: common/models.py:2197 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2195 +#: common/models.py:2202 msgid "Worked on" msgstr "" -#: common/models.py:2196 +#: common/models.py:2203 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2355 +#: common/models.py:2362 msgid "Id" msgstr "" -#: common/models.py:2361 templates/js/translated/news.js:35 +#: common/models.py:2368 templates/js/translated/news.js:35 msgid "Title" msgstr "" -#: common/models.py:2371 templates/js/translated/news.js:51 +#: common/models.py:2378 templates/js/translated/news.js:51 msgid "Published" msgstr "" -#: common/models.py:2376 templates/InvenTree/settings/plugin.html:62 +#: common/models.py:2383 templates/InvenTree/settings/plugin.html:62 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/news.js:47 msgid "Author" msgstr "" -#: common/models.py:2381 templates/js/translated/news.js:43 +#: common/models.py:2388 templates/js/translated/news.js:43 msgid "Summary" msgstr "" -#: common/models.py:2386 +#: common/models.py:2393 msgid "Read" msgstr "" -#: common/models.py:2387 +#: common/models.py:2394 msgid "Was this news item read?" msgstr "" -#: common/notifications.py:293 +#: common/notifications.py:294 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:295 +#: common/notifications.py:296 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:301 +#: common/notifications.py:302 msgid "Items Received" msgstr "" -#: common/notifications.py:303 +#: common/notifications.py:304 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:415 +#: common/notifications.py:416 msgid "Error raised by plugin" msgstr "" #: common/views.py:85 order/templates/order/order_wizard/po_upload.html:51 #: order/templates/order/purchase_order_detail.html:25 order/views.py:102 -#: part/views.py:107 templates/patterns/wizard/upload.html:37 +#: part/templates/part/import_wizard/part_upload.html:58 part/views.py:109 +#: templates/patterns/wizard/upload.html:37 msgid "Upload File" msgstr "" #: common/views.py:86 order/templates/order/order_wizard/match_fields.html:52 #: order/views.py:103 #: part/templates/part/import_wizard/ajax_match_fields.html:45 -#: part/views.py:108 templates/patterns/wizard/match_fields.html:51 +#: part/templates/part/import_wizard/match_fields.html:52 part/views.py:110 +#: templates/patterns/wizard/match_fields.html:51 msgid "Match Fields" msgstr "" @@ -2934,7 +2954,9 @@ msgstr "" #: common/views.py:509 order/templates/order/order_wizard/match_fields.html:27 #: order/templates/order/order_wizard/match_parts.html:19 #: order/templates/order/order_wizard/po_upload.html:49 +#: part/templates/part/import_wizard/match_fields.html:27 #: part/templates/part/import_wizard/match_references.html:19 +#: part/templates/part/import_wizard/part_upload.html:56 #: templates/patterns/wizard/match_fields.html:26 #: templates/patterns/wizard/upload.html:35 msgid "Previous Step" @@ -2995,7 +3017,7 @@ msgstr "" msgid "Link to external company information" msgstr "" -#: company/models.py:140 part/models.py:878 +#: company/models.py:140 part/models.py:879 msgid "Image" msgstr "" @@ -3028,8 +3050,8 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:153 company/serializers.py:399 -#: company/templates/company/company_base.html:107 part/models.py:2762 -#: part/serializers.py:154 part/serializers.py:182 stock/serializers.py:182 +#: company/templates/company/company_base.html:107 part/models.py:2780 +#: part/serializers.py:156 part/serializers.py:184 stock/serializers.py:182 #: templates/InvenTree/settings/pricing.html:64 msgid "Currency" msgstr "" @@ -3055,12 +3077,12 @@ msgstr "" #: templates/js/translated/company.js:433 #: templates/js/translated/company.js:534 #: templates/js/translated/company.js:669 -#: templates/js/translated/company.js:957 templates/js/translated/part.js:238 +#: templates/js/translated/company.js:957 templates/js/translated/part.js:241 #: templates/js/translated/table_filters.js:439 msgid "Manufacturer" msgstr "" -#: company/models.py:269 templates/js/translated/part.js:239 +#: company/models.py:269 templates/js/translated/part.js:242 msgid "Select manufacturer" msgstr "" @@ -3070,11 +3092,11 @@ msgstr "" #: templates/js/translated/company.js:533 #: templates/js/translated/company.js:685 #: templates/js/translated/company.js:976 templates/js/translated/order.js:2286 -#: templates/js/translated/part.js:249 templates/js/translated/part.js:1067 +#: templates/js/translated/part.js:252 templates/js/translated/part.js:1338 msgid "MPN" msgstr "" -#: company/models.py:276 templates/js/translated/part.js:250 +#: company/models.py:276 templates/js/translated/part.js:253 msgid "Manufacturer Part Number" msgstr "" @@ -3100,8 +3122,8 @@ msgstr "" #: company/models.py:370 #: report/templates/report/inventree_test_report_base.html:95 #: stock/models.py:2156 templates/js/translated/company.js:582 -#: templates/js/translated/company.js:800 templates/js/translated/part.js:889 -#: templates/js/translated/stock.js:1399 +#: templates/js/translated/company.js:800 templates/js/translated/part.js:1160 +#: templates/js/translated/stock.js:1398 msgid "Value" msgstr "" @@ -3109,10 +3131,10 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:377 part/admin.py:26 part/models.py:951 -#: part/models.py:3128 part/templates/part/part_base.html:286 -#: templates/InvenTree/settings/settings.html:349 -#: templates/js/translated/company.js:806 templates/js/translated/part.js:895 +#: company/models.py:377 part/admin.py:26 part/models.py:952 +#: part/models.py:3206 part/templates/part/part_base.html:286 +#: templates/InvenTree/settings/settings.html:350 +#: templates/js/translated/company.js:806 templates/js/translated/part.js:1166 msgid "Units" msgstr "" @@ -3132,24 +3154,24 @@ msgstr "" #: templates/js/translated/company.js:304 #: templates/js/translated/company.js:437 #: templates/js/translated/company.js:930 templates/js/translated/order.js:2017 -#: templates/js/translated/part.js:219 templates/js/translated/part.js:1035 +#: templates/js/translated/part.js:222 templates/js/translated/part.js:1306 #: templates/js/translated/pricing.js:231 #: templates/js/translated/table_filters.js:443 msgid "Supplier" msgstr "" -#: company/models.py:498 templates/js/translated/part.js:220 +#: company/models.py:498 templates/js/translated/part.js:223 msgid "Select supplier" msgstr "" #: company/models.py:503 company/templates/company/supplier_part.html:146 #: part/bom.py:253 part/bom.py:281 templates/js/translated/company.js:303 -#: templates/js/translated/order.js:2273 templates/js/translated/part.js:230 -#: templates/js/translated/part.js:1053 templates/js/translated/pricing.js:243 +#: templates/js/translated/order.js:2273 templates/js/translated/part.js:233 +#: templates/js/translated/part.js:1324 templates/js/translated/pricing.js:243 msgid "SKU" msgstr "" -#: company/models.py:504 templates/js/translated/part.js:231 +#: company/models.py:504 templates/js/translated/part.js:234 msgid "Supplier stock keeping unit" msgstr "" @@ -3166,24 +3188,25 @@ msgid "Supplier part description" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:181 -#: part/admin.py:225 part/models.py:3381 part/templates/part/upload_bom.html:59 +#: part/admin.py:258 part/models.py:3459 part/templates/part/upload_bom.html:59 +#: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:397 msgid "Note" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "base cost" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:534 company/templates/company/supplier_part.html:167 #: stock/admin.py:101 stock/models.py:682 #: stock/templates/stock/item_base.html:243 -#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2016 +#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2011 msgid "Packaging" msgstr "" @@ -3196,7 +3219,7 @@ msgstr "" #: templates/js/translated/company.js:997 templates/js/translated/order.js:826 #: templates/js/translated/order.js:1253 templates/js/translated/order.js:1508 #: templates/js/translated/order.js:2317 templates/js/translated/order.js:2334 -#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1137 +#: templates/js/translated/part.js:1356 templates/js/translated/part.js:1408 msgid "Pack Quantity" msgstr "" @@ -3204,7 +3227,7 @@ msgstr "" msgid "Unit quantity supplied in a single pack" msgstr "" -#: company/models.py:544 part/models.py:1863 +#: company/models.py:544 part/models.py:1869 msgid "multiple" msgstr "" @@ -3216,8 +3239,8 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:1118 templates/js/translated/build.js:1883 -#: templates/js/translated/build.js:2770 templates/js/translated/part.js:623 -#: templates/js/translated/part.js:626 +#: templates/js/translated/build.js:2770 templates/js/translated/part.js:626 +#: templates/js/translated/part.js:629 #: templates/js/translated/table_filters.js:206 msgid "Available" msgstr "" @@ -3300,7 +3323,7 @@ msgstr "" #: stock/templates/stock/item_base.html:399 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:429 templates/js/translated/order.js:2827 -#: templates/js/translated/stock.js:2607 +#: templates/js/translated/stock.js:2602 #: templates/js/translated/table_filters.js:447 msgid "Customer" msgstr "" @@ -3314,7 +3337,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:206 -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:525 msgid "Remove Image" msgstr "" @@ -3323,19 +3346,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:209 -#: part/templates/part/part_base.html:514 +#: part/templates/part/part_base.html:528 #: templates/InvenTree/settings/user.html:87 #: templates/InvenTree/settings/user.html:149 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:238 -#: part/templates/part/part_base.html:543 +#: part/templates/part/part_base.html:557 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:253 -#: part/templates/part/part_base.html:598 +#: part/templates/part/part_base.html:612 msgid "Download Image" msgstr "" @@ -3351,7 +3374,7 @@ msgstr "新しいサプライヤー・パーツを作成" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:357 +#: part/templates/part/detail.html:380 msgid "New Supplier Part" msgstr "新しいサプライヤー・パーツ" @@ -3380,7 +3403,7 @@ msgstr "メーカー・パーツ" msgid "Create new manufacturer part" msgstr "新しいメーカー・パーツを作成" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:387 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:410 msgid "New Manufacturer Part" msgstr "新しいメーカ―・パーツ" @@ -3394,9 +3417,9 @@ msgstr "" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:35 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:35 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:200 -#: templates/InvenTree/settings/sidebar.html:49 +#: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:293 templates/navbar.html:50 #: users/models.py:42 msgid "Purchase Orders" @@ -3417,9 +3440,9 @@ msgstr "" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:39 +#: part/templates/part/detail.html:130 part/templates/part/part_sidebar.html:39 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:220 -#: templates/InvenTree/settings/sidebar.html:51 +#: templates/InvenTree/settings/sidebar.html:53 #: templates/js/translated/search.js:317 templates/navbar.html:61 #: users/models.py:43 msgid "Sales Orders" @@ -3451,7 +3474,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:221 -#: part/templates/part/detail.html:87 part/templates/part/part_base.html:85 +#: part/templates/part/detail.html:110 part/templates/part/part_base.html:85 msgid "Order part" msgstr "パーツの注文" @@ -3482,28 +3505,28 @@ msgid "Suppliers" msgstr "" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:368 +#: part/templates/part/detail.html:391 msgid "Delete supplier parts" msgstr "" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:369 part/templates/part/detail.html:399 -#: templates/js/translated/forms.js:455 templates/js/translated/helpers.js:38 -#: templates/js/translated/part.js:351 templates/js/translated/stock.js:188 -#: users/models.py:224 +#: part/templates/part/detail.html:392 part/templates/part/detail.html:422 +#: templates/js/translated/forms.js:458 templates/js/translated/helpers.js:38 +#: templates/js/translated/part.js:354 templates/js/translated/stock.js:187 +#: users/models.py:225 msgid "Delete" msgstr "" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:184 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:207 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:189 +#: part/templates/part/detail.html:212 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:62 msgid "New Parameter" @@ -3514,7 +3537,7 @@ msgid "Delete parameters" msgstr "" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:825 +#: part/templates/part/detail.html:865 msgid "Add Parameter" msgstr "" @@ -3538,7 +3561,7 @@ msgstr "" #: company/templates/company/supplier_part.html:24 stock/models.py:665 #: stock/templates/stock/item_base.html:236 #: templates/js/translated/company.js:946 templates/js/translated/order.js:1173 -#: templates/js/translated/stock.js:1974 +#: templates/js/translated/stock.js:1969 msgid "Supplier Part" msgstr "" @@ -3578,7 +3601,7 @@ msgstr "" #: company/templates/company/supplier_part.html:56 #: company/templates/company/supplier_part.html:57 #: company/templates/company/supplier_part.html:222 -#: part/templates/part/detail.html:88 +#: part/templates/part/detail.html:111 msgid "Order Part" msgstr "" @@ -3630,7 +3653,7 @@ msgstr "" #: company/templates/company/supplier_part.html:204 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:198 -#: templates/js/translated/stock.js:467 +#: templates/js/translated/stock.js:466 msgid "New Stock Item" msgstr "" @@ -3662,10 +3685,10 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 -#: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/part.js:777 templates/js/translated/part.js:1378 -#: templates/js/translated/part.js:1534 templates/js/translated/stock.js:994 -#: templates/js/translated/stock.js:1799 templates/navbar.html:31 +#: templates/InvenTree/settings/sidebar.html:47 +#: templates/js/translated/part.js:1048 templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1805 templates/js/translated/stock.js:993 +#: templates/js/translated/stock.js:1794 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3680,7 +3703,7 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:29 #: part/templates/part/part_sidebar.html:30 -#: templates/InvenTree/settings/sidebar.html:35 +#: templates/InvenTree/settings/sidebar.html:37 msgid "Pricing" msgstr "" @@ -3692,7 +3715,7 @@ msgstr "" #: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:155 templates/js/translated/search.js:225 -#: templates/js/translated/stock.js:2484 users/models.py:40 +#: templates/js/translated/stock.js:2479 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3801,9 +3824,9 @@ msgstr "" #: stock/templates/stock/item_base.html:182 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:619 templates/js/translated/order.js:1174 -#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1012 -#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1954 -#: templates/js/translated/stock.js:2588 +#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1283 +#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1949 +#: templates/js/translated/stock.js:2583 msgid "Purchase Order" msgstr "" @@ -3973,7 +3996,7 @@ msgstr "" #: order/models.py:1046 order/templates/order/order_base.html:178 #: templates/js/translated/order.js:1679 templates/js/translated/order.js:2404 -#: templates/js/translated/part.js:1129 templates/js/translated/part.js:1161 +#: templates/js/translated/part.js:1400 templates/js/translated/part.js:1432 #: templates/js/translated/table_filters.js:358 msgid "Received" msgstr "" @@ -3984,7 +4007,7 @@ msgstr "" #: order/models.py:1054 stock/models.py:800 stock/serializers.py:173 #: stock/templates/stock/item_base.html:189 -#: templates/js/translated/stock.js:2005 +#: templates/js/translated/stock.js:2000 msgid "Purchase Price" msgstr "購入金額" @@ -4350,18 +4373,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:9 #: part/templates/part/import_wizard/ajax_match_fields.html:9 +#: part/templates/part/import_wizard/match_fields.html:9 #: templates/patterns/wizard/match_fields.html:8 msgid "Missing selections for the following required columns" msgstr "" #: order/templates/order/order_wizard/match_fields.html:20 #: part/templates/part/import_wizard/ajax_match_fields.html:20 +#: part/templates/part/import_wizard/match_fields.html:20 #: templates/patterns/wizard/match_fields.html:19 msgid "Duplicate selections found, see below. Fix them then retry submitting." msgstr "" #: order/templates/order/order_wizard/match_fields.html:29 #: order/templates/order/order_wizard/match_parts.html:21 +#: part/templates/part/import_wizard/match_fields.html:29 #: part/templates/part/import_wizard/match_references.html:21 #: templates/patterns/wizard/match_fields.html:28 msgid "Submit Selections" @@ -4369,18 +4395,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:35 #: part/templates/part/import_wizard/ajax_match_fields.html:28 +#: part/templates/part/import_wizard/match_fields.html:35 #: templates/patterns/wizard/match_fields.html:34 msgid "File Fields" msgstr "" #: order/templates/order/order_wizard/match_fields.html:42 #: part/templates/part/import_wizard/ajax_match_fields.html:35 +#: part/templates/part/import_wizard/match_fields.html:42 #: templates/patterns/wizard/match_fields.html:41 msgid "Remove column" msgstr "" #: order/templates/order/order_wizard/match_fields.html:60 #: part/templates/part/import_wizard/ajax_match_fields.html:53 +#: part/templates/part/import_wizard/match_fields.html:60 #: templates/patterns/wizard/match_fields.html:59 msgid "Duplicate selection" msgstr "" @@ -4389,12 +4418,13 @@ msgstr "" #: order/templates/order/order_wizard/match_parts.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: 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:102 templates/js/translated/build.js:485 #: templates/js/translated/build.js:641 templates/js/translated/build.js:2088 #: templates/js/translated/order.js:1122 templates/js/translated/order.js:1624 -#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:657 -#: templates/js/translated/stock.js:825 +#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:824 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4429,6 +4459,7 @@ msgstr "" #: order/templates/order/order_wizard/po_upload.html:27 #: part/templates/part/import_wizard/ajax_part_upload.html:10 +#: part/templates/part/import_wizard/part_upload.html:26 #: templates/patterns/wizard/upload.html:13 #, python-format msgid "Step %(step)s of %(count)s" @@ -4567,12 +4598,12 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:19 part/admin.py:219 part/models.py:3262 stock/admin.py:84 +#: part/admin.py:19 part/admin.py:252 part/models.py:3340 stock/admin.py:84 #: templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/admin.py:20 part/admin.py:221 part/models.py:3266 stock/admin.py:85 +#: part/admin.py:20 part/admin.py:254 part/models.py:3344 stock/admin.py:85 msgid "Part Name" msgstr "" @@ -4580,32 +4611,32 @@ msgstr "" msgid "Part Description" msgstr "" -#: part/admin.py:22 part/models.py:852 part/templates/part/part_base.html:272 -#: templates/js/translated/part.js:763 templates/js/translated/part.js:1491 -#: templates/js/translated/stock.js:1765 +#: part/admin.py:22 part/models.py:853 part/templates/part/part_base.html:272 +#: templates/js/translated/part.js:1034 templates/js/translated/part.js:1762 +#: templates/js/translated/stock.js:1760 msgid "IPN" msgstr "" -#: part/admin.py:23 part/models.py:860 part/templates/part/part_base.html:279 -#: report/models.py:171 templates/js/translated/part.js:768 +#: part/admin.py:23 part/models.py:861 part/templates/part/part_base.html:279 +#: report/models.py:171 templates/js/translated/part.js:1039 msgid "Revision" msgstr "" -#: part/admin.py:24 part/admin.py:145 part/models.py:838 +#: part/admin.py:24 part/admin.py:178 part/models.py:839 #: part/templates/part/category.html:87 part/templates/part/part_base.html:300 msgid "Keywords" msgstr "" -#: part/admin.py:28 part/admin.py:139 +#: part/admin.py:28 part/admin.py:172 #: templates/js/translated/model_renderers.js:338 msgid "Category ID" msgstr "" -#: part/admin.py:29 part/admin.py:140 +#: part/admin.py:29 part/admin.py:173 msgid "Category Name" msgstr "" -#: part/admin.py:30 part/admin.py:144 +#: part/admin.py:30 part/admin.py:177 msgid "Default Location ID" msgstr "" @@ -4613,7 +4644,7 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:33 part/models.py:944 part/templates/part/part_base.html:206 +#: part/admin.py:33 part/models.py:945 part/templates/part/part_base.html:206 msgid "Minimum Stock" msgstr "" @@ -4625,8 +4656,8 @@ msgstr "" #: part/admin.py:48 part/bom.py:145 part/templates/part/part_base.html:213 #: templates/js/translated/bom.js:1156 templates/js/translated/build.js:1935 -#: templates/js/translated/part.js:613 templates/js/translated/part.js:633 -#: templates/js/translated/part.js:1381 templates/js/translated/part.js:1559 +#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 +#: templates/js/translated/part.js:1652 templates/js/translated/part.js:1830 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4642,115 +4673,115 @@ msgid "Allocated" msgstr "" #: part/admin.py:51 part/templates/part/part_base.html:244 -#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 -#: templates/js/translated/part.js:1385 templates/js/translated/part.js:1566 +#: templates/js/translated/part.js:619 templates/js/translated/part.js:639 +#: templates/js/translated/part.js:1656 templates/js/translated/part.js:1837 msgid "Building" msgstr "" -#: part/admin.py:52 part/models.py:2846 +#: part/admin.py:52 part/models.py:2864 msgid "Minimum Cost" msgstr "" -#: part/admin.py:53 part/models.py:2852 +#: part/admin.py:53 part/models.py:2870 msgid "Maximum Cost" msgstr "" -#: part/admin.py:142 part/admin.py:216 stock/admin.py:26 stock/admin.py:98 +#: part/admin.py:175 part/admin.py:249 stock/admin.py:26 stock/admin.py:98 msgid "Parent ID" msgstr "" -#: part/admin.py:143 part/admin.py:218 stock/admin.py:27 +#: part/admin.py:176 part/admin.py:251 stock/admin.py:27 msgid "Parent Name" msgstr "" -#: part/admin.py:146 part/templates/part/category.html:81 +#: part/admin.py:179 part/templates/part/category.html:81 #: part/templates/part/category.html:94 msgid "Category Path" msgstr "" -#: part/admin.py:149 part/models.py:382 part/templates/part/cat_link.html:3 +#: part/admin.py:182 part/models.py:383 part/templates/part/cat_link.html:3 #: part/templates/part/category.html:23 part/templates/part/category.html:134 #: part/templates/part/category.html:154 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:84 -#: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:2065 templates/js/translated/search.js:146 +#: templates/InvenTree/settings/sidebar.html:43 +#: templates/js/translated/part.js:2346 templates/js/translated/search.js:146 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "パーツ" -#: part/admin.py:211 +#: part/admin.py:244 msgid "BOM Level" msgstr "" -#: part/admin.py:213 +#: part/admin.py:246 msgid "BOM Item ID" msgstr "" -#: part/admin.py:217 +#: part/admin.py:250 msgid "Parent IPN" msgstr "" -#: part/admin.py:220 part/models.py:3270 +#: part/admin.py:253 part/models.py:3348 msgid "Part IPN" msgstr "" -#: part/admin.py:226 templates/js/translated/pricing.js:91 +#: part/admin.py:259 templates/js/translated/pricing.js:91 #: templates/js/translated/pricing.js:732 msgid "Minimum Price" msgstr "" -#: part/admin.py:227 templates/js/translated/pricing.js:86 +#: part/admin.py:260 templates/js/translated/pricing.js:86 #: templates/js/translated/pricing.js:740 msgid "Maximum Price" msgstr "" -#: part/api.py:536 +#: part/api.py:538 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:556 +#: part/api.py:558 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:574 +#: part/api.py:576 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:660 +#: part/api.py:662 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:818 +#: part/api.py:820 msgid "Valid" msgstr "" -#: part/api.py:819 +#: part/api.py:821 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:825 +#: part/api.py:827 msgid "This option must be selected" msgstr "" -#: part/api.py:1265 +#: part/api.py:1281 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1269 +#: part/api.py:1285 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1284 +#: part/api.py:1300 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1315 part/api.py:1319 part/api.py:1334 part/api.py:1338 +#: part/api.py:1331 part/api.py:1335 part/api.py:1350 part/api.py:1354 msgid "This field is required" msgstr "" -#: part/bom.py:142 part/models.py:116 part/models.py:887 -#: part/templates/part/category.html:109 part/templates/part/part_base.html:360 +#: part/bom.py:142 part/models.py:116 part/models.py:888 +#: part/templates/part/category.html:109 part/templates/part/part_base.html:374 msgid "Default Location" msgstr "" @@ -4801,7 +4832,7 @@ msgstr "" msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:159 part/models.py:3211 part/templates/part/category.html:16 +#: part/models.py:159 part/models.py:3289 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -4812,423 +4843,459 @@ msgstr "" msgid "Part Categories" msgstr "" -#: part/models.py:468 +#: part/models.py:469 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:538 part/models.py:550 +#: part/models.py:539 part/models.py:551 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:640 +#: part/models.py:641 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:771 +#: part/models.py:772 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:776 +#: part/models.py:777 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:790 +#: part/models.py:791 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:808 part/models.py:3267 +#: part/models.py:809 part/models.py:3345 msgid "Part name" msgstr "" -#: part/models.py:815 +#: part/models.py:816 msgid "Is Template" msgstr "" -#: part/models.py:816 +#: part/models.py:817 msgid "Is this part a template part?" msgstr "" -#: part/models.py:826 +#: part/models.py:827 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:827 +#: part/models.py:828 msgid "Variant Of" msgstr "" -#: part/models.py:833 +#: part/models.py:834 msgid "Part description" msgstr "" -#: part/models.py:839 +#: part/models.py:840 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:846 part/models.py:2966 part/models.py:3210 +#: part/models.py:847 part/models.py:3044 part/models.py:3288 #: part/templates/part/part_base.html:263 -#: templates/InvenTree/settings/settings.html:229 +#: templates/InvenTree/settings/settings.html:230 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1513 templates/js/translated/part.js:1770 +#: templates/js/translated/part.js:1784 templates/js/translated/part.js:2051 msgid "Category" msgstr "カテゴリ" -#: part/models.py:847 +#: part/models.py:848 msgid "Part category" msgstr "" -#: part/models.py:853 +#: part/models.py:854 msgid "Internal Part Number" msgstr "" -#: part/models.py:859 +#: part/models.py:860 msgid "Part revision or version number" msgstr "" -#: part/models.py:885 +#: part/models.py:886 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:930 part/templates/part/part_base.html:369 +#: part/models.py:931 part/templates/part/part_base.html:383 msgid "Default Supplier" msgstr "" -#: part/models.py:931 +#: part/models.py:932 msgid "Default supplier part" msgstr "" -#: part/models.py:938 +#: part/models.py:939 msgid "Default Expiry" msgstr "" -#: part/models.py:939 +#: part/models.py:940 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:945 +#: part/models.py:946 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:952 +#: part/models.py:953 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:958 +#: part/models.py:959 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:964 +#: part/models.py:965 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:970 +#: part/models.py:971 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:975 +#: part/models.py:976 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:980 +#: part/models.py:981 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:985 +#: part/models.py:986 msgid "Is this part active?" msgstr "" -#: part/models.py:990 +#: part/models.py:991 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:992 +#: part/models.py:993 msgid "Part notes" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "BOM checksum" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:997 +#: part/models.py:998 msgid "BOM checked by" msgstr "" -#: part/models.py:999 +#: part/models.py:1000 msgid "BOM checked date" msgstr "" -#: part/models.py:1003 +#: part/models.py:1004 msgid "Creation User" msgstr "" -#: part/models.py:1863 +#: part/models.py:1010 part/templates/part/part_base.html:345 +#: stock/templates/stock/item_base.html:445 +#: templates/js/translated/part.js:1901 +msgid "Last Stocktake" +msgstr "" + +#: part/models.py:1869 msgid "Sell multiple" msgstr "" -#: part/models.py:2763 +#: part/models.py:2781 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:2768 +#: part/models.py:2786 templates/js/translated/part.js:806 msgid "Updated" msgstr "" -#: part/models.py:2769 +#: part/models.py:2787 msgid "Timestamp of last pricing update" msgstr "" -#: part/models.py:2786 +#: part/models.py:2804 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:2787 +#: part/models.py:2805 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:2792 +#: part/models.py:2810 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:2793 +#: part/models.py:2811 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:2798 +#: part/models.py:2816 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:2799 +#: part/models.py:2817 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:2804 +#: part/models.py:2822 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:2805 +#: part/models.py:2823 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:2810 +#: part/models.py:2828 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:2811 +#: part/models.py:2829 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:2816 +#: part/models.py:2834 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:2817 +#: part/models.py:2835 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:2822 +#: part/models.py:2840 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:2823 +#: part/models.py:2841 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:2828 +#: part/models.py:2846 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:2829 +#: part/models.py:2847 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:2834 +#: part/models.py:2852 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:2835 +#: part/models.py:2853 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:2840 +#: part/models.py:2858 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:2841 +#: part/models.py:2859 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:2847 +#: part/models.py:2865 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:2853 +#: part/models.py:2871 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:2858 +#: part/models.py:2876 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:2859 +#: part/models.py:2877 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:2864 +#: part/models.py:2882 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:2865 +#: part/models.py:2883 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:2870 +#: part/models.py:2888 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:2871 +#: part/models.py:2889 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:2876 +#: part/models.py:2894 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:2877 +#: part/models.py:2895 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3013 +#: part/models.py:2913 +msgid "Part for stocktake" +msgstr "" + +#: part/models.py:2920 +msgid "Total available stock at time of stocktake" +msgstr "" + +#: part/models.py:2924 part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:63 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:2043 templates/js/translated/part.js:887 +#: templates/js/translated/pricing.js:537 +#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2511 +msgid "Date" +msgstr "" + +#: part/models.py:2925 +msgid "Date stocktake was performed" +msgstr "" + +#: part/models.py:2933 +msgid "Additional notes" +msgstr "" + +#: part/models.py:2941 +msgid "User who performed this stocktake" +msgstr "" + +#: part/models.py:3091 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3030 +#: part/models.py:3108 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:3050 templates/js/translated/part.js:2116 -#: templates/js/translated/stock.js:1379 +#: part/models.py:3128 templates/js/translated/part.js:2397 +#: templates/js/translated/stock.js:1378 msgid "Test Name" msgstr "" -#: part/models.py:3051 +#: part/models.py:3129 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3056 +#: part/models.py:3134 msgid "Test Description" msgstr "" -#: part/models.py:3057 +#: part/models.py:3135 msgid "Enter description for this test" msgstr "" -#: part/models.py:3062 templates/js/translated/part.js:2125 +#: part/models.py:3140 templates/js/translated/part.js:2406 #: templates/js/translated/table_filters.js:322 msgid "Required" msgstr "" -#: part/models.py:3063 +#: part/models.py:3141 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3068 templates/js/translated/part.js:2133 +#: part/models.py:3146 templates/js/translated/part.js:2414 msgid "Requires Value" msgstr "" -#: part/models.py:3069 +#: part/models.py:3147 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3074 templates/js/translated/part.js:2140 +#: part/models.py:3152 templates/js/translated/part.js:2421 msgid "Requires Attachment" msgstr "" -#: part/models.py:3075 +#: part/models.py:3153 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3116 +#: part/models.py:3194 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3124 +#: part/models.py:3202 msgid "Parameter Name" msgstr "" -#: part/models.py:3128 +#: part/models.py:3206 msgid "Parameter Units" msgstr "" -#: part/models.py:3133 +#: part/models.py:3211 msgid "Parameter description" msgstr "" -#: part/models.py:3166 +#: part/models.py:3244 msgid "Parent Part" msgstr "" -#: part/models.py:3168 part/models.py:3216 part/models.py:3217 -#: templates/InvenTree/settings/settings.html:224 +#: part/models.py:3246 part/models.py:3294 part/models.py:3295 +#: templates/InvenTree/settings/settings.html:225 msgid "Parameter Template" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Data" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Parameter Value" msgstr "" -#: part/models.py:3221 templates/InvenTree/settings/settings.html:233 +#: part/models.py:3299 templates/InvenTree/settings/settings.html:234 msgid "Default Value" msgstr "" -#: part/models.py:3222 +#: part/models.py:3300 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3259 +#: part/models.py:3337 msgid "Part ID or part name" msgstr "" -#: part/models.py:3263 +#: part/models.py:3341 msgid "Unique part ID value" msgstr "" -#: part/models.py:3271 +#: part/models.py:3349 msgid "Part IPN value" msgstr "" -#: part/models.py:3274 +#: part/models.py:3352 msgid "Level" msgstr "" -#: part/models.py:3275 +#: part/models.py:3353 msgid "BOM level" msgstr "" -#: part/models.py:3344 +#: part/models.py:3422 msgid "Select parent part" msgstr "" -#: part/models.py:3352 +#: part/models.py:3430 msgid "Sub part" msgstr "" -#: part/models.py:3353 +#: part/models.py:3431 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:3359 +#: part/models.py:3437 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:3363 part/templates/part/upload_bom.html:58 +#: part/models.py:3441 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:933 templates/js/translated/bom.js:986 #: templates/js/translated/build.js:1868 #: templates/js/translated/table_filters.js:84 @@ -5236,189 +5303,189 @@ msgstr "" msgid "Optional" msgstr "" -#: part/models.py:3364 +#: part/models.py:3442 msgid "This BOM item is optional" msgstr "" -#: part/models.py:3369 templates/js/translated/bom.js:929 +#: part/models.py:3447 templates/js/translated/bom.js:929 #: templates/js/translated/bom.js:995 templates/js/translated/build.js:1859 #: templates/js/translated/table_filters.js:88 msgid "Consumable" msgstr "" -#: part/models.py:3370 +#: part/models.py:3448 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:3374 part/templates/part/upload_bom.html:55 +#: part/models.py:3452 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:3375 +#: part/models.py:3453 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:3378 +#: part/models.py:3456 msgid "BOM item reference" msgstr "" -#: part/models.py:3381 +#: part/models.py:3459 msgid "BOM item notes" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "Checksum" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "BOM line checksum" msgstr "" -#: part/models.py:3387 part/templates/part/upload_bom.html:57 +#: part/models.py:3465 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1012 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:108 msgid "Inherited" msgstr "" -#: part/models.py:3388 +#: part/models.py:3466 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:3393 part/templates/part/upload_bom.html:56 +#: part/models.py:3471 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1004 msgid "Allow Variants" msgstr "" -#: part/models.py:3394 +#: part/models.py:3472 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:3480 stock/models.py:558 +#: part/models.py:3558 stock/models.py:558 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:3489 part/models.py:3491 +#: part/models.py:3567 part/models.py:3569 msgid "Sub part must be specified" msgstr "" -#: part/models.py:3618 +#: part/models.py:3696 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:3639 +#: part/models.py:3717 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:3652 +#: part/models.py:3730 msgid "Parent BOM item" msgstr "" -#: part/models.py:3660 +#: part/models.py:3738 msgid "Substitute part" msgstr "" -#: part/models.py:3675 +#: part/models.py:3753 msgid "Part 1" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Part 2" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Select Related Part" msgstr "" -#: part/models.py:3697 +#: part/models.py:3775 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:3701 +#: part/models.py:3779 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:155 part/serializers.py:183 stock/serializers.py:183 +#: part/serializers.py:157 part/serializers.py:185 stock/serializers.py:183 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:543 +#: part/serializers.py:584 msgid "Update" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:585 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:854 +#: part/serializers.py:895 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:862 +#: part/serializers.py:903 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:863 +#: part/serializers.py:904 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:868 +#: part/serializers.py:909 msgid "Include Inherited" msgstr "" -#: part/serializers.py:869 +#: part/serializers.py:910 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:874 +#: part/serializers.py:915 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:875 +#: part/serializers.py:916 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:921 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:881 +#: part/serializers.py:922 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:962 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:922 +#: part/serializers.py:963 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:952 +#: part/serializers.py:993 msgid "No part column specified" msgstr "" -#: part/serializers.py:995 +#: part/serializers.py:1036 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:998 +#: part/serializers.py:1039 msgid "No matching part found" msgstr "" -#: part/serializers.py:1001 +#: part/serializers.py:1042 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1010 +#: part/serializers.py:1051 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1059 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1039 +#: part/serializers.py:1080 msgid "At least one BOM item is required" msgstr "" @@ -5450,7 +5517,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:267 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:290 msgid "BOM actions" msgstr "" @@ -5507,8 +5574,8 @@ msgstr "" msgid "New Part" msgstr "新規パーツ" -#: part/templates/part/category.html:169 part/templates/part/detail.html:366 -#: part/templates/part/detail.html:397 +#: part/templates/part/category.html:169 part/templates/part/detail.html:389 +#: part/templates/part/detail.html:420 msgid "Options" msgstr "" @@ -5556,7 +5623,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:404 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:407 msgid "Duplicate Part" msgstr "" @@ -5593,118 +5660,128 @@ msgstr "" msgid "Refresh" msgstr "" -#: part/templates/part/detail.html:59 +#: part/templates/part/detail.html:65 +msgid "Add stocktake information" +msgstr "" + +#: part/templates/part/detail.html:66 part/templates/part/part_sidebar.html:49 +#: stock/admin.py:107 templates/js/translated/stock.js:1905 +msgid "Stocktake" +msgstr "" + +#: part/templates/part/detail.html:82 msgid "Part Test Templates" msgstr "" -#: part/templates/part/detail.html:64 +#: part/templates/part/detail.html:87 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:144 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:141 +#: part/templates/part/detail.html:164 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:156 +#: part/templates/part/detail.html:179 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:160 +#: part/templates/part/detail.html:183 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:161 +#: part/templates/part/detail.html:184 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:188 +#: part/templates/part/detail.html:211 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:225 part/templates/part/part_sidebar.html:52 +#: part/templates/part/detail.html:248 part/templates/part/part_sidebar.html:57 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:229 part/templates/part/detail.html:230 +#: part/templates/part/detail.html:252 part/templates/part/detail.html:253 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:250 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:273 part/templates/part/part_sidebar.html:17 +#: report/templates/report/inventree_bill_of_materials_report.html:100 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:255 +#: part/templates/part/detail.html:278 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:259 templates/js/translated/bom.js:309 +#: part/templates/part/detail.html:282 templates/js/translated/bom.js:309 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:261 +#: part/templates/part/detail.html:284 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:271 +#: part/templates/part/detail.html:294 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:272 templates/js/translated/part.js:276 +#: part/templates/part/detail.html:295 templates/js/translated/part.js:279 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:273 +#: part/templates/part/detail.html:296 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:278 part/templates/part/detail.html:279 +#: part/templates/part/detail.html:301 part/templates/part/detail.html:302 #: templates/js/translated/bom.js:1268 templates/js/translated/bom.js:1269 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:292 +#: part/templates/part/detail.html:315 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:310 +#: part/templates/part/detail.html:333 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:337 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:360 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:353 +#: part/templates/part/detail.html:376 msgid "Part Suppliers" msgstr "" -#: part/templates/part/detail.html:383 +#: part/templates/part/detail.html:406 msgid "Part Manufacturers" msgstr "" -#: part/templates/part/detail.html:399 +#: part/templates/part/detail.html:422 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:696 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:704 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:796 msgid "Add Test Result Template" msgstr "" #: part/templates/part/import_wizard/ajax_part_upload.html:29 #: part/templates/part/import_wizard/part_upload.html:14 -msgid "Unsuffitient privileges." +msgid "Insufficient privileges." msgstr "" #: part/templates/part/import_wizard/part_upload.html:8 @@ -5715,6 +5792,34 @@ msgstr "" msgid "Import Parts from File" msgstr "" +#: part/templates/part/import_wizard/part_upload.html:31 +msgid "Requirements for part import" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "The part import file must contain the required named columns as provided in the " +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:89 +msgid "Download Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:92 +#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 +#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 +msgid "Format" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:93 +#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 +#: templates/js/translated/order.js:999 +msgid "Select file format" +msgstr "" + #: part/templates/part/part_app_base.html:12 msgid "Part List" msgstr "" @@ -5804,12 +5909,12 @@ msgstr "" #: templates/js/translated/company.js:660 #: templates/js/translated/company.js:921 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:677 templates/js/translated/part.js:755 +#: templates/js/translated/part.js:680 templates/js/translated/part.js:1026 msgid "Inactive" msgstr "" #: part/templates/part/part_base.html:165 -#: part/templates/part/part_base.html:666 +#: part/templates/part/part_base.html:680 msgid "Show Part Details" msgstr "" @@ -5837,38 +5942,38 @@ msgid "Minimum stock level" msgstr "" #: part/templates/part/part_base.html:330 templates/js/translated/bom.js:1032 -#: templates/js/translated/part.js:798 templates/js/translated/part.js:1604 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:1875 #: templates/js/translated/pricing.js:124 #: templates/js/translated/pricing.js:762 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:345 +#: part/templates/part/part_base.html:359 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:349 +#: part/templates/part/part_base.html:363 #: stock/templates/stock/item_base.html:331 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:449 +#: part/templates/part/part_base.html:463 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:495 +#: part/templates/part/part_base.html:509 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:512 +#: part/templates/part/part_base.html:526 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:564 +#: part/templates/part/part_base.html:578 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:660 +#: part/templates/part/part_base.html:674 msgid "Hide Part Details" msgstr "" @@ -5920,15 +6025,6 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" -#: part/templates/part/part_scheduling.html:13 -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:63 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:2043 templates/js/translated/pricing.js:537 -#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2516 -msgid "Date" -msgstr "" - #: part/templates/part/part_scheduling.html:14 msgid "Scheduled Quantity" msgstr "" @@ -5941,7 +6037,7 @@ msgstr "" msgid "Scheduling" msgstr "" -#: part/templates/part/part_sidebar.html:48 +#: part/templates/part/part_sidebar.html:53 msgid "Test Templates" msgstr "" @@ -5960,7 +6056,7 @@ msgstr "" #: part/templates/part/prices.html:25 stock/admin.py:106 #: stock/templates/stock/item_base.html:440 #: templates/js/translated/company.js:1039 -#: templates/js/translated/stock.js:1940 +#: templates/js/translated/stock.js:1935 msgid "Last Updated" msgstr "" @@ -6023,8 +6119,8 @@ msgstr "" msgid "Add Sell Price Break" msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:639 -#: templates/js/translated/part.js:1373 templates/js/translated/part.js:1375 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:1644 templates/js/translated/part.js:1646 msgid "No Stock" msgstr "在庫切れ" @@ -6087,27 +6183,32 @@ msgstr "" msgid "{title} v{version}" msgstr "" -#: part/views.py:109 +#: part/views.py:111 msgid "Match References" msgstr "" -#: part/views.py:354 +#: part/views.py:239 +#, python-brace-format +msgid "Can't import part {name} because there is no category assigned" +msgstr "" + +#: part/views.py:378 msgid "Part QR Code" msgstr "" -#: part/views.py:372 +#: part/views.py:396 msgid "Select Part Image" msgstr "" -#: part/views.py:398 +#: part/views.py:422 msgid "Updated part image" msgstr "" -#: part/views.py:401 +#: part/views.py:425 msgid "Part image not found" msgstr "" -#: part/views.py:493 +#: part/views.py:517 msgid "Part Pricing" msgstr "" @@ -6156,28 +6257,48 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:29 -#: plugin/builtin/integration/core_notifications.py:31 +#: plugin/builtin/integration/core_notifications.py:33 msgid "InvenTree contributors" msgstr "" -#: plugin/builtin/integration/core_notifications.py:30 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:32 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notificaton methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:37 -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:80 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:38 -#: plugin/builtin/integration/core_notifications.py:57 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:81 msgid "Allow sending of emails for event notifications" msgstr "" +#: plugin/builtin/integration/core_notifications.py:45 +msgid "Enable slack notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:46 +msgid "Allow sending of slack channel messages for event notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:51 +msgid "Slack incoming webhook url" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:52 +msgid "URL that is used to send messages to a slack channel" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:162 +msgid "Open link" +msgstr "" + #: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" @@ -6409,6 +6530,10 @@ msgstr "" msgid "Asset file description" msgstr "" +#: report/templates/report/inventree_bill_of_materials_report.html:133 +msgid "Materials needed" +msgstr "" + #: report/templates/report/inventree_build_order_base.html:146 msgid "Required For" msgstr "" @@ -6427,7 +6552,7 @@ msgstr "" #: templates/js/translated/build.js:1244 templates/js/translated/build.js:1745 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:121 templates/js/translated/order.js:3611 -#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:522 +#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:521 msgid "Serial Number" msgstr "" @@ -6459,8 +6584,9 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: stock/admin.py:87 templates/js/translated/stock.js:642 -#: templates/js/translated/stock.js:812 templates/js/translated/stock.js:2765 +#: stock/admin.py:87 templates/js/translated/part.js:749 +#: templates/js/translated/stock.js:641 templates/js/translated/stock.js:811 +#: templates/js/translated/stock.js:2760 msgid "Serial" msgstr "" @@ -6515,13 +6641,9 @@ msgstr "" msgid "Purchase Order ID" msgstr "" -#: stock/admin.py:107 templates/js/translated/stock.js:1910 -msgid "Stocktake" -msgstr "" - #: stock/admin.py:108 stock/models.py:764 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/stock.js:1924 +#: templates/js/translated/stock.js:1919 msgid "Expiry Date" msgstr "" @@ -6936,7 +7058,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2912 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2907 msgid "Install Stock Item" msgstr "" @@ -6944,7 +7066,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1561 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1560 msgid "Add Test Result" msgstr "" @@ -7117,10 +7239,6 @@ msgstr "" msgid "Stale" msgstr "" -#: stock/templates/stock/item_base.html:445 -msgid "Last Stocktake" -msgstr "" - #: stock/templates/stock/item_base.html:449 msgid "No stocktake performed" msgstr "" @@ -7394,7 +7512,8 @@ msgstr "" #: templates/InvenTree/notifications/notifications.html:10 #: templates/InvenTree/notifications/sidebar.html:5 -#: templates/InvenTree/settings/sidebar.html:17 templates/notifications.html:5 +#: templates/InvenTree/settings/sidebar.html:17 +#: templates/InvenTree/settings/sidebar.html:35 templates/notifications.html:5 msgid "Notifications" msgstr "" @@ -7475,6 +7594,14 @@ msgstr "" msgid "Open in new tab" msgstr "" +#: templates/InvenTree/settings/notifications.html:9 +msgid "Global Notification Settings" +msgstr "" + +#: templates/InvenTree/settings/notifications.html:18 +msgid "Slug" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -7492,7 +7619,7 @@ msgid "Part Parameter Templates" msgstr "" #: templates/InvenTree/settings/plugin.html:10 -#: templates/InvenTree/settings/sidebar.html:55 +#: templates/InvenTree/settings/sidebar.html:57 msgid "Plugin Settings" msgstr "" @@ -7501,7 +7628,7 @@ msgid "Changing the settings below require you to immediately restart the server msgstr "" #: templates/InvenTree/settings/plugin.html:38 -#: templates/InvenTree/settings/sidebar.html:57 +#: templates/InvenTree/settings/sidebar.html:59 msgid "Plugins" msgstr "" @@ -7669,67 +7796,67 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:117 +#: templates/InvenTree/settings/settings.html:118 msgid "Edit Plugin Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:119 +#: templates/InvenTree/settings/settings.html:120 msgid "Edit Notification Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:122 +#: templates/InvenTree/settings/settings.html:123 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:124 +#: templates/InvenTree/settings/settings.html:125 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:214 +#: templates/InvenTree/settings/settings.html:215 msgid "No category parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:236 -#: templates/InvenTree/settings/settings.html:361 -msgid "Edit Template" -msgstr "" - #: templates/InvenTree/settings/settings.html:237 #: templates/InvenTree/settings/settings.html:362 +msgid "Edit Template" +msgstr "" + +#: templates/InvenTree/settings/settings.html:238 +#: templates/InvenTree/settings/settings.html:363 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:277 +#: templates/InvenTree/settings/settings.html:278 msgid "Create Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:322 +#: templates/InvenTree/settings/settings.html:323 msgid "Delete Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:334 +#: templates/InvenTree/settings/settings.html:335 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:338 +#: templates/InvenTree/settings/settings.html:339 #: templates/js/translated/news.js:29 #: templates/js/translated/notification.js:36 msgid "ID" msgstr "" -#: templates/InvenTree/settings/settings.html:380 +#: templates/InvenTree/settings/settings.html:381 msgid "Create Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:399 +#: templates/InvenTree/settings/settings.html:400 msgid "Edit Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:413 +#: templates/InvenTree/settings/settings.html:414 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/InvenTree/settings/settings.html:421 +#: templates/InvenTree/settings/settings.html:422 msgid "Delete Part Parameter Template" msgstr "" @@ -7758,12 +7885,12 @@ msgid "Search Settings" msgstr "" #: templates/InvenTree/settings/sidebar.html:19 -#: templates/InvenTree/settings/sidebar.html:37 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Label Printing" msgstr "" #: templates/InvenTree/settings/sidebar.html:21 -#: templates/InvenTree/settings/sidebar.html:39 +#: templates/InvenTree/settings/sidebar.html:41 msgid "Reporting" msgstr "" @@ -7775,7 +7902,7 @@ msgstr "" msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:43 +#: templates/InvenTree/settings/sidebar.html:45 msgid "Categories" msgstr "" @@ -7945,64 +8072,64 @@ msgstr "" msgid "Do you really want to remove the selected email address?" msgstr "" -#: templates/InvenTree/settings/user_display.html:28 +#: templates/InvenTree/settings/user_display.html:29 msgid "Theme Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:38 +#: templates/InvenTree/settings/user_display.html:39 msgid "Select theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:49 +#: templates/InvenTree/settings/user_display.html:50 msgid "Set Theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:57 +#: templates/InvenTree/settings/user_display.html:58 msgid "Language Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:66 +#: templates/InvenTree/settings/user_display.html:67 msgid "Select language" msgstr "" -#: templates/InvenTree/settings/user_display.html:82 +#: templates/InvenTree/settings/user_display.html:83 #, python-format msgid "%(lang_translated)s%% translated" msgstr "" -#: templates/InvenTree/settings/user_display.html:84 +#: templates/InvenTree/settings/user_display.html:85 msgid "No translations available" msgstr "" -#: templates/InvenTree/settings/user_display.html:91 +#: templates/InvenTree/settings/user_display.html:92 msgid "Set Language" msgstr "" -#: templates/InvenTree/settings/user_display.html:94 +#: templates/InvenTree/settings/user_display.html:95 msgid "Some languages are not complete" msgstr "" -#: templates/InvenTree/settings/user_display.html:96 +#: templates/InvenTree/settings/user_display.html:97 msgid "Show only sufficent" msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "and hidden." msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "Show them too" msgstr "" -#: templates/InvenTree/settings/user_display.html:105 +#: templates/InvenTree/settings/user_display.html:106 msgid "Help the translation efforts!" msgstr "" -#: templates/InvenTree/settings/user_display.html:106 +#: templates/InvenTree/settings/user_display.html:107 msgid "Native language translation of the web application is community contributed via crowdin. Contributions are welcomed and encouraged." msgstr "" -#: templates/InvenTree/settings/user_display.html:107 +#: templates/InvenTree/settings/user_display.html:108 msgid "InvenTree Translation Project" msgstr "" @@ -8080,7 +8207,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:646 +#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:649 msgid "Confirm" msgstr "確認" @@ -8313,7 +8440,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 -#: templates/js/translated/part.js:2445 +#: templates/js/translated/part.js:2726 msgid "Minimum Quantity" msgstr "" @@ -8466,7 +8593,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1089 +#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1088 msgid "Remove stock item" msgstr "" @@ -8548,16 +8675,6 @@ msgstr "" msgid "Download BOM Template" msgstr "" -#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 -#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 -msgid "Format" -msgstr "" - -#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 -#: templates/js/translated/order.js:999 -msgid "Select file format" -msgstr "" - #: templates/js/translated/bom.js:320 msgid "Multi Level BOM" msgstr "" @@ -8688,7 +8805,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:1145 templates/js/translated/build.js:1923 -#: templates/js/translated/part.js:790 templates/js/translated/part.js:1572 +#: templates/js/translated/part.js:1061 templates/js/translated/part.js:1843 msgid "Includes variant stock" msgstr "" @@ -8773,13 +8890,13 @@ msgstr "" msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:317 templates/js/translated/stock.js:95 -#: templates/js/translated/stock.js:237 +#: templates/js/translated/build.js:317 templates/js/translated/stock.js:94 +#: templates/js/translated/stock.js:236 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:319 templates/js/translated/stock.js:97 -#: templates/js/translated/stock.js:239 +#: templates/js/translated/build.js:319 templates/js/translated/stock.js:96 +#: templates/js/translated/stock.js:238 msgid "Latest serial number" msgstr "" @@ -8987,9 +9104,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1466 -#: templates/js/translated/part.js:2003 templates/js/translated/stock.js:1725 -#: templates/js/translated/stock.js:2428 +#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1737 +#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1724 +#: templates/js/translated/stock.js:2423 msgid "Select" msgstr "" @@ -9001,7 +9118,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2695 +#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2690 msgid "No user information" msgstr "" @@ -9074,34 +9191,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:652 -#: templates/js/translated/company.js:913 templates/js/translated/part.js:661 -#: templates/js/translated/part.js:747 +#: templates/js/translated/company.js:913 templates/js/translated/part.js:664 +#: templates/js/translated/part.js:1018 msgid "Template part" msgstr "" #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:917 templates/js/translated/part.js:665 -#: templates/js/translated/part.js:751 +#: templates/js/translated/company.js:917 templates/js/translated/part.js:668 +#: templates/js/translated/part.js:1022 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:784 templates/js/translated/part.js:870 +#: templates/js/translated/company.js:784 templates/js/translated/part.js:1141 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:821 templates/js/translated/part.js:912 +#: templates/js/translated/company.js:821 templates/js/translated/part.js:1183 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:822 templates/js/translated/part.js:913 +#: templates/js/translated/company.js:822 templates/js/translated/part.js:1184 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:841 templates/js/translated/part.js:930 +#: templates/js/translated/company.js:841 templates/js/translated/part.js:1201 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:852 templates/js/translated/part.js:942 +#: templates/js/translated/company.js:852 templates/js/translated/part.js:1213 msgid "Delete Parameter" msgstr "" @@ -9181,61 +9298,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:369 templates/js/translated/forms.js:384 -#: templates/js/translated/forms.js:398 templates/js/translated/forms.js:412 +#: templates/js/translated/forms.js:372 templates/js/translated/forms.js:387 +#: templates/js/translated/forms.js:401 templates/js/translated/forms.js:415 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:371 +#: templates/js/translated/forms.js:374 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:386 +#: templates/js/translated/forms.js:389 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:400 +#: templates/js/translated/forms.js:403 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:414 +#: templates/js/translated/forms.js:417 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:672 +#: templates/js/translated/forms.js:675 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:773 +#: templates/js/translated/forms.js:776 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1266 templates/modals.html:19 +#: templates/js/translated/forms.js:1269 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1703 +#: templates/js/translated/forms.js:1706 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1919 templates/search.html:29 +#: templates/js/translated/forms.js:1922 templates/search.html:29 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2172 +#: templates/js/translated/forms.js:2175 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:2640 +#: templates/js/translated/forms.js:2643 msgid "Select Columns" msgstr "" @@ -9256,7 +9373,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1113 +#: templates/js/translated/stock.js:1112 msgid "Select Stock Items" msgstr "" @@ -9590,7 +9707,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2184 +#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2179 msgid "Stock Status" msgstr "" @@ -9614,7 +9731,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1982 templates/js/translated/part.js:983 +#: templates/js/translated/order.js:1982 templates/js/translated/part.js:1254 msgid "No purchase orders found" msgstr "" @@ -9647,8 +9764,8 @@ msgstr "" msgid "Total" msgstr "" -#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1085 -#: templates/js/translated/part.js:1137 +#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1356 +#: templates/js/translated/part.js:1408 msgid "Total Quantity" msgstr "" @@ -9666,11 +9783,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2388 templates/js/translated/order.js:3900 -#: templates/js/translated/part.js:1121 +#: templates/js/translated/part.js:1392 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1166 +#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1437 msgid "Receive line item" msgstr "" @@ -9791,7 +9908,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3623 templates/js/translated/order.js:3712 -#: templates/js/translated/stock.js:1641 +#: templates/js/translated/stock.js:1640 msgid "Shipped to customer" msgstr "" @@ -9835,334 +9952,358 @@ msgstr "" msgid "No matching lines" msgstr "" -#: templates/js/translated/part.js:52 +#: templates/js/translated/part.js:55 msgid "Part Attributes" msgstr "" -#: templates/js/translated/part.js:56 +#: templates/js/translated/part.js:59 msgid "Part Creation Options" msgstr "" -#: templates/js/translated/part.js:60 +#: templates/js/translated/part.js:63 msgid "Part Duplication Options" msgstr "" -#: templates/js/translated/part.js:64 +#: templates/js/translated/part.js:67 msgid "Supplier Options" msgstr "" -#: templates/js/translated/part.js:78 +#: templates/js/translated/part.js:81 msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:168 +#: templates/js/translated/part.js:171 msgid "Create Initial Stock" msgstr "" -#: templates/js/translated/part.js:169 +#: templates/js/translated/part.js:172 msgid "Create an initial stock item for this part" msgstr "" -#: templates/js/translated/part.js:176 +#: templates/js/translated/part.js:179 msgid "Initial Stock Quantity" msgstr "" -#: templates/js/translated/part.js:177 +#: templates/js/translated/part.js:180 msgid "Specify initial stock quantity for this part" msgstr "" -#: templates/js/translated/part.js:184 +#: templates/js/translated/part.js:187 msgid "Select destination stock location" msgstr "" -#: templates/js/translated/part.js:202 +#: templates/js/translated/part.js:205 msgid "Copy Category Parameters" msgstr "" -#: templates/js/translated/part.js:203 +#: templates/js/translated/part.js:206 msgid "Copy parameter templates from selected part category" msgstr "" -#: templates/js/translated/part.js:211 +#: templates/js/translated/part.js:214 msgid "Add Supplier Data" msgstr "" -#: templates/js/translated/part.js:212 +#: templates/js/translated/part.js:215 msgid "Create initial supplier data for this part" msgstr "" -#: templates/js/translated/part.js:268 +#: templates/js/translated/part.js:271 msgid "Copy Image" msgstr "" -#: templates/js/translated/part.js:269 +#: templates/js/translated/part.js:272 msgid "Copy image from original part" msgstr "" -#: templates/js/translated/part.js:277 +#: templates/js/translated/part.js:280 msgid "Copy bill of materials from original part" msgstr "" -#: templates/js/translated/part.js:284 +#: templates/js/translated/part.js:287 msgid "Copy Parameters" msgstr "" -#: templates/js/translated/part.js:285 +#: templates/js/translated/part.js:288 msgid "Copy parameter data from original part" msgstr "" -#: templates/js/translated/part.js:298 +#: templates/js/translated/part.js:301 msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:313 templates/js/translated/stock.js:122 +#: templates/js/translated/part.js:316 templates/js/translated/stock.js:121 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:329 +#: templates/js/translated/part.js:332 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:342 +#: templates/js/translated/part.js:345 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:347 +#: templates/js/translated/part.js:350 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:359 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:360 +#: templates/js/translated/part.js:363 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:368 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:394 +#: templates/js/translated/part.js:397 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:396 +#: templates/js/translated/part.js:399 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:407 +#: templates/js/translated/part.js:410 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:459 +#: templates/js/translated/part.js:462 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:460 +#: templates/js/translated/part.js:463 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:477 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:476 +#: templates/js/translated/part.js:479 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:477 +#: templates/js/translated/part.js:480 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:478 +#: templates/js/translated/part.js:481 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:485 +#: templates/js/translated/part.js:488 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:521 +#: templates/js/translated/part.js:524 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:523 +#: templates/js/translated/part.js:526 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:531 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:530 +#: templates/js/translated/part.js:533 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:547 +#: templates/js/translated/part.js:550 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:560 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:560 +#: templates/js/translated/part.js:563 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:585 +#: templates/js/translated/part.js:588 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1554 +#: templates/js/translated/part.js:612 templates/js/translated/part.js:1825 #: templates/js/translated/table_filters.js:488 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:622 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:653 templates/js/translated/part.js:739 +#: templates/js/translated/part.js:656 templates/js/translated/part.js:1010 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:657 templates/js/translated/part.js:743 +#: templates/js/translated/part.js:660 templates/js/translated/part.js:1014 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:669 +#: templates/js/translated/part.js:672 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:673 +#: templates/js/translated/part.js:676 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:815 +#: templates/js/translated/part.js:761 +msgid "Stock item has not been checked recently" +msgstr "" + +#: templates/js/translated/part.js:769 +msgid "Update item" +msgstr "" + +#: templates/js/translated/part.js:770 +msgid "Delete item" +msgstr "" + +#: templates/js/translated/part.js:871 +msgid "No stocktake information available" +msgstr "" + +#: templates/js/translated/part.js:910 templates/js/translated/part.js:933 +msgid "Edit Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:914 templates/js/translated/part.js:945 +msgid "Delete Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:1086 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1236 +#: templates/js/translated/part.js:1507 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1260 +#: templates/js/translated/part.js:1531 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1327 templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1598 templates/js/translated/part.js:1936 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1521 +#: templates/js/translated/part.js:1792 msgid "No category" msgstr "" -#: templates/js/translated/part.js:1552 +#: templates/js/translated/part.js:1823 msgid "No stock" msgstr "" -#: templates/js/translated/part.js:1576 +#: templates/js/translated/part.js:1847 msgid "Allocated to build orders" msgstr "" -#: templates/js/translated/part.js:1580 +#: templates/js/translated/part.js:1851 msgid "Allocated to sales orders" msgstr "" -#: templates/js/translated/part.js:1679 templates/js/translated/part.js:1922 -#: templates/js/translated/stock.js:2387 +#: templates/js/translated/part.js:1960 templates/js/translated/part.js:2203 +#: templates/js/translated/stock.js:2382 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1695 +#: templates/js/translated/part.js:1976 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1761 +#: templates/js/translated/part.js:2042 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1766 +#: templates/js/translated/part.js:2047 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1771 +#: templates/js/translated/part.js:2052 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1784 +#: templates/js/translated/part.js:2065 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1942 templates/js/translated/stock.js:2407 +#: templates/js/translated/part.js:2223 templates/js/translated/stock.js:2402 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2022 +#: templates/js/translated/part.js:2303 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2038 +#: templates/js/translated/part.js:2319 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2383 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2153 templates/js/translated/stock.js:1338 +#: templates/js/translated/part.js:2434 templates/js/translated/stock.js:1337 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2154 templates/js/translated/stock.js:1339 -#: templates/js/translated/stock.js:1599 +#: templates/js/translated/part.js:2435 templates/js/translated/stock.js:1338 +#: templates/js/translated/stock.js:1598 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2441 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2182 +#: templates/js/translated/part.js:2463 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2196 +#: templates/js/translated/part.js:2477 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2277 templates/js/translated/part.js:2278 +#: templates/js/translated/part.js:2558 templates/js/translated/part.js:2559 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2280 +#: templates/js/translated/part.js:2561 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:2286 +#: templates/js/translated/part.js:2567 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:2336 +#: templates/js/translated/part.js:2617 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2623 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:2438 +#: templates/js/translated/part.js:2719 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2454 +#: templates/js/translated/part.js:2735 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:2499 +#: templates/js/translated/part.js:2780 msgid "Minimum Stock Level" msgstr "" @@ -10290,388 +10431,388 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:74 +#: templates/js/translated/stock.js:73 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:104 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:114 +#: templates/js/translated/stock.js:113 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:148 +#: templates/js/translated/stock.js:147 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:163 +#: templates/js/translated/stock.js:162 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:177 +#: templates/js/translated/stock.js:176 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:184 +#: templates/js/translated/stock.js:183 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:193 +#: templates/js/translated/stock.js:192 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:197 +#: templates/js/translated/stock.js:196 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:201 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:256 +#: templates/js/translated/stock.js:255 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:298 +#: templates/js/translated/stock.js:297 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:304 +#: templates/js/translated/stock.js:303 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:368 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:389 +#: templates/js/translated/stock.js:388 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:405 +#: templates/js/translated/stock.js:404 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:410 +#: templates/js/translated/stock.js:409 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:431 +#: templates/js/translated/stock.js:430 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:481 +#: templates/js/translated/stock.js:480 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:494 +#: templates/js/translated/stock.js:493 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:519 +#: templates/js/translated/stock.js:518 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:523 templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:522 templates/js/translated/stock.js:523 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:540 +#: templates/js/translated/stock.js:539 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:560 +#: templates/js/translated/stock.js:559 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:568 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:692 +#: templates/js/translated/stock.js:691 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:693 +#: templates/js/translated/stock.js:692 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:770 +#: templates/js/translated/stock.js:769 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:771 +#: templates/js/translated/stock.js:770 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:773 +#: templates/js/translated/stock.js:772 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:774 +#: templates/js/translated/stock.js:773 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:863 +#: templates/js/translated/stock.js:862 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:864 +#: templates/js/translated/stock.js:863 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:958 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:959 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:966 +#: templates/js/translated/stock.js:965 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:967 +#: templates/js/translated/stock.js:966 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:971 +#: templates/js/translated/stock.js:970 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:972 +#: templates/js/translated/stock.js:971 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:976 +#: templates/js/translated/stock.js:975 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:977 users/models.py:220 +#: templates/js/translated/stock.js:976 users/models.py:221 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:981 +#: templates/js/translated/stock.js:980 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1114 +#: templates/js/translated/stock.js:1113 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1141 +#: templates/js/translated/stock.js:1140 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1277 +#: templates/js/translated/stock.js:1276 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1279 +#: templates/js/translated/stock.js:1278 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1284 +#: templates/js/translated/stock.js:1283 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1331 +#: templates/js/translated/stock.js:1330 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1334 +#: templates/js/translated/stock.js:1333 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1360 +#: templates/js/translated/stock.js:1359 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1417 +#: templates/js/translated/stock.js:1416 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1582 +#: templates/js/translated/stock.js:1581 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1604 +#: templates/js/translated/stock.js:1603 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1633 +#: templates/js/translated/stock.js:1632 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1637 +#: templates/js/translated/stock.js:1636 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1645 +#: templates/js/translated/stock.js:1644 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1651 +#: templates/js/translated/stock.js:1650 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1820 +#: templates/js/translated/stock.js:1815 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1825 +#: templates/js/translated/stock.js:1820 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1828 +#: templates/js/translated/stock.js:1823 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1831 +#: templates/js/translated/stock.js:1826 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1833 +#: templates/js/translated/stock.js:1828 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1835 +#: templates/js/translated/stock.js:1830 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1838 +#: templates/js/translated/stock.js:1833 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1837 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1844 +#: templates/js/translated/stock.js:1839 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1846 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1853 +#: templates/js/translated/stock.js:1848 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1855 +#: templates/js/translated/stock.js:1850 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1859 +#: templates/js/translated/stock.js:1854 #: templates/js/translated/table_filters.js:216 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1989 +#: templates/js/translated/stock.js:1984 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2026 +#: templates/js/translated/stock.js:2021 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2199 +#: templates/js/translated/stock.js:2194 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2213 +#: templates/js/translated/stock.js:2208 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2214 +#: templates/js/translated/stock.js:2209 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2446 +#: templates/js/translated/stock.js:2441 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2536 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2557 +#: templates/js/translated/stock.js:2552 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2579 +#: templates/js/translated/stock.js:2574 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2598 +#: templates/js/translated/stock.js:2593 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2617 +#: templates/js/translated/stock.js:2612 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2635 +#: templates/js/translated/stock.js:2630 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2658 +#: templates/js/translated/stock.js:2653 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2666 +#: templates/js/translated/stock.js:2661 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2737 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2793 templates/js/translated/stock.js:2829 +#: templates/js/translated/stock.js:2788 templates/js/translated/stock.js:2824 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2845 +#: templates/js/translated/stock.js:2840 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2866 +#: templates/js/translated/stock.js:2861 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2867 +#: templates/js/translated/stock.js:2862 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2869 +#: templates/js/translated/stock.js:2864 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2870 +#: templates/js/translated/stock.js:2865 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:2866 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2872 +#: templates/js/translated/stock.js:2867 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2885 +#: templates/js/translated/stock.js:2880 msgid "Select part to install" msgstr "" @@ -10696,7 +10837,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:92 -#: templates/js/translated/table_filters.js:516 +#: templates/js/translated/table_filters.js:520 msgid "Has Pricing" msgstr "" @@ -10912,6 +11053,10 @@ msgstr "" msgid "Purchasable" msgstr "" +#: templates/js/translated/table_filters.js:504 +msgid "Has stocktake entries" +msgstr "" + #: templates/js/translated/tables.js:70 msgid "Display calendar view" msgstr "" @@ -11206,35 +11351,35 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:207 +#: users/models.py:208 msgid "Permission set" msgstr "" -#: users/models.py:215 +#: users/models.py:216 msgid "Group" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "View" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "Permission to view items" msgstr "" -#: users/models.py:220 +#: users/models.py:221 msgid "Permission to add items" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Change" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Permissions to edit items" msgstr "" -#: users/models.py:224 +#: users/models.py:225 msgid "Permission to delete items" msgstr "" diff --git a/InvenTree/locale/ko/LC_MESSAGES/django.po b/InvenTree/locale/ko/LC_MESSAGES/django.po index 7bbedc9928..0711af13a4 100644 --- a/InvenTree/locale/ko/LC_MESSAGES/django.po +++ b/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: 2022-12-30 20:46+0000\n" -"PO-Revision-Date: 2022-12-31 11:29\n" +"POT-Creation-Date: 2023-01-01 11:05+0000\n" +"PO-Revision-Date: 2023-01-01 11:26\n" "Last-Translator: \n" "Language-Team: Korean\n" "Language: ko_KR\n" @@ -34,7 +34,7 @@ msgstr "" #: company/templates/company/sidebar.html:25 order/models.py:943 #: order/templates/order/po_sidebar.html:11 #: order/templates/order/so_sidebar.html:17 part/admin.py:27 -#: part/templates/part/part_sidebar.html:57 +#: part/models.py:2932 part/templates/part/part_sidebar.html:62 #: report/templates/report/inventree_build_order_base.html:172 #: stock/admin.py:103 stock/models.py:2061 stock/models.py:2169 #: stock/serializers.py:321 stock/serializers.py:454 stock/serializers.py:535 @@ -44,8 +44,8 @@ msgstr "" #: templates/js/translated/company.js:1023 #: templates/js/translated/order.js:2435 templates/js/translated/order.js:2569 #: templates/js/translated/order.js:3067 templates/js/translated/order.js:4004 -#: templates/js/translated/order.js:4385 templates/js/translated/stock.js:1413 -#: templates/js/translated/stock.js:2020 +#: templates/js/translated/order.js:4385 templates/js/translated/part.js:882 +#: templates/js/translated/stock.js:1412 templates/js/translated/stock.js:2015 msgid "Notes" msgstr "" @@ -204,18 +204,18 @@ msgstr "첨부파일" msgid "Select file to attach" msgstr "첨부할 파일을 선택하세요" -#: InvenTree/models.py:412 common/models.py:2366 company/models.py:129 +#: InvenTree/models.py:412 common/models.py:2373 company/models.py:129 #: company/models.py:281 company/models.py:516 order/models.py:85 -#: order/models.py:1282 part/admin.py:25 part/models.py:865 +#: order/models.py:1282 part/admin.py:25 part/models.py:866 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: stock/admin.py:102 templates/js/translated/company.js:692 #: templates/js/translated/company.js:1012 -#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1615 +#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1886 msgid "Link" msgstr "링크" -#: InvenTree/models.py:413 build/models.py:290 part/models.py:866 +#: InvenTree/models.py:413 build/models.py:290 part/models.py:867 #: stock/models.py:716 msgid "Link to external URL" msgstr "외부 URL로 링크" @@ -229,12 +229,13 @@ msgstr "" msgid "File comment" msgstr "" -#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1810 -#: common/models.py:1811 common/models.py:2034 common/models.py:2035 -#: common/models.py:2296 common/models.py:2297 part/models.py:2948 -#: part/models.py:2968 plugin/models.py:264 plugin/models.py:265 +#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1817 +#: common/models.py:1818 common/models.py:2041 common/models.py:2042 +#: common/models.py:2303 common/models.py:2304 part/models.py:2940 +#: part/models.py:3026 part/models.py:3046 plugin/models.py:264 +#: plugin/models.py:265 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2689 +#: templates/js/translated/stock.js:2684 msgid "User" msgstr "사용자" @@ -271,19 +272,20 @@ msgstr "파일 이름 바꾸기 오류" msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2020 -#: company/models.py:363 label/models.py:101 part/models.py:809 -#: part/models.py:3123 plugin/models.py:94 report/models.py:152 +#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2027 +#: company/models.py:363 label/models.py:101 part/models.py:810 +#: part/models.py:3201 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 +#: templates/InvenTree/settings/notifications.html:17 #: templates/InvenTree/settings/plugin.html:60 #: templates/InvenTree/settings/plugin.html:104 #: templates/InvenTree/settings/plugin_settings.html:23 -#: templates/InvenTree/settings/settings.html:344 +#: templates/InvenTree/settings/settings.html:345 #: templates/js/translated/company.js:581 #: templates/js/translated/company.js:794 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:711 templates/js/translated/part.js:880 -#: templates/js/translated/part.js:2010 templates/js/translated/stock.js:2434 +#: templates/js/translated/part.js:982 templates/js/translated/part.js:1151 +#: templates/js/translated/part.js:2291 templates/js/translated/stock.js:2429 msgid "Name" msgstr "이름" @@ -292,24 +294,25 @@ msgstr "이름" #: company/models.py:522 company/templates/company/company_base.html:72 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:108 label/models.py:108 -#: order/models.py:83 part/admin.py:141 part/admin.py:222 part/models.py:832 -#: part/models.py:3132 part/templates/part/category.html:75 +#: order/models.py:83 part/admin.py:174 part/admin.py:255 part/models.py:833 +#: part/models.py:3210 part/templates/part/category.html:75 #: part/templates/part/part_base.html:172 #: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/admin.py:25 stock/templates/stock/location.html:117 +#: templates/InvenTree/settings/notifications.html:19 #: templates/InvenTree/settings/plugin_settings.html:28 -#: templates/InvenTree/settings/settings.html:355 +#: templates/InvenTree/settings/settings.html:356 #: templates/js/translated/bom.js:592 templates/js/translated/bom.js:895 #: templates/js/translated/build.js:2596 templates/js/translated/company.js:445 #: templates/js/translated/company.js:703 #: templates/js/translated/company.js:987 templates/js/translated/order.js:2030 #: templates/js/translated/order.js:2267 templates/js/translated/order.js:2845 -#: templates/js/translated/part.js:773 templates/js/translated/part.js:1223 -#: templates/js/translated/part.js:1497 templates/js/translated/part.js:2046 -#: templates/js/translated/part.js:2121 templates/js/translated/stock.js:1787 -#: templates/js/translated/stock.js:2466 templates/js/translated/stock.js:2526 +#: templates/js/translated/part.js:1044 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1768 templates/js/translated/part.js:2327 +#: templates/js/translated/part.js:2402 templates/js/translated/stock.js:1782 +#: templates/js/translated/stock.js:2461 templates/js/translated/stock.js:2521 msgid "Description" msgstr "설명" @@ -322,7 +325,7 @@ msgid "parent" msgstr "" #: InvenTree/models.py:580 InvenTree/models.py:581 -#: templates/js/translated/part.js:2055 templates/js/translated/stock.js:2475 +#: templates/js/translated/part.js:2336 templates/js/translated/stock.js:2470 msgid "Path" msgstr "" @@ -354,7 +357,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:58 part/models.py:3468 +#: InvenTree/serializers.py:58 part/models.py:3546 msgid "Must be a valid number" msgstr "유효한 숫자여야 합니다" @@ -421,107 +424,107 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:639 +#: InvenTree/settings.py:642 msgid "Czech" msgstr "체코어" -#: InvenTree/settings.py:640 +#: InvenTree/settings.py:643 msgid "Danish" msgstr "" -#: InvenTree/settings.py:641 +#: InvenTree/settings.py:644 msgid "German" msgstr "독일어" -#: InvenTree/settings.py:642 +#: InvenTree/settings.py:645 msgid "Greek" msgstr "그리스어" -#: InvenTree/settings.py:643 +#: InvenTree/settings.py:646 msgid "English" msgstr "영어" -#: InvenTree/settings.py:644 +#: InvenTree/settings.py:647 msgid "Spanish" msgstr "스페인어" -#: InvenTree/settings.py:645 +#: InvenTree/settings.py:648 msgid "Spanish (Mexican)" msgstr "스페인어 (멕시코)" -#: InvenTree/settings.py:646 +#: InvenTree/settings.py:649 msgid "Farsi / Persian" msgstr "파르시어/페르시아어" -#: InvenTree/settings.py:647 +#: InvenTree/settings.py:650 msgid "French" msgstr "프랑스어" -#: InvenTree/settings.py:648 +#: InvenTree/settings.py:651 msgid "Hebrew" msgstr "히브리어" -#: InvenTree/settings.py:649 +#: InvenTree/settings.py:652 msgid "Hungarian" msgstr "헝가리어" -#: InvenTree/settings.py:650 +#: InvenTree/settings.py:653 msgid "Italian" msgstr "이탈리아어" -#: InvenTree/settings.py:651 +#: InvenTree/settings.py:654 msgid "Japanese" msgstr "일본어" -#: InvenTree/settings.py:652 +#: InvenTree/settings.py:655 msgid "Korean" msgstr "한국어" -#: InvenTree/settings.py:653 +#: InvenTree/settings.py:656 msgid "Dutch" msgstr "네덜란드어" -#: InvenTree/settings.py:654 +#: InvenTree/settings.py:657 msgid "Norwegian" msgstr "노르웨이어" -#: InvenTree/settings.py:655 +#: InvenTree/settings.py:658 msgid "Polish" msgstr "폴란드어" -#: InvenTree/settings.py:656 +#: InvenTree/settings.py:659 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:657 +#: InvenTree/settings.py:660 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:658 +#: InvenTree/settings.py:661 msgid "Russian" msgstr "러시아어" -#: InvenTree/settings.py:659 +#: InvenTree/settings.py:662 msgid "Slovenian" msgstr "" -#: InvenTree/settings.py:660 +#: InvenTree/settings.py:663 msgid "Swedish" msgstr "스웨덴어" -#: InvenTree/settings.py:661 +#: InvenTree/settings.py:664 msgid "Thai" msgstr "태국어" -#: InvenTree/settings.py:662 +#: InvenTree/settings.py:665 msgid "Turkish" msgstr "터키어" -#: InvenTree/settings.py:663 +#: InvenTree/settings.py:666 msgid "Vietnamese" msgstr "베트남어" -#: InvenTree/settings.py:664 +#: InvenTree/settings.py:667 msgid "Chinese" msgstr "중국어" @@ -652,7 +655,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2124 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2119 msgid "Merged stock items" msgstr "" @@ -756,7 +759,7 @@ msgstr "" #: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:141 -#: templates/InvenTree/settings/sidebar.html:47 +#: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:254 users/models.py:41 msgid "Build Orders" msgstr "" @@ -766,8 +769,9 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:155 order/models.py:241 order/models.py:651 -#: order/models.py:941 part/admin.py:224 part/models.py:3378 +#: order/models.py:941 part/admin.py:257 part/models.py:3456 #: part/templates/part/upload_bom.html:54 +#: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 #: templates/js/translated/bom.js:729 templates/js/translated/bom.js:905 @@ -793,13 +797,15 @@ msgstr "" #: build/models.py:180 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:684 #: order/models.py:1038 order/models.py:1149 order/models.py:1150 -#: part/models.py:381 part/models.py:2781 part/models.py:2894 -#: part/models.py:2909 part/models.py:2928 part/models.py:2946 -#: part/models.py:3045 part/models.py:3166 part/models.py:3258 -#: part/models.py:3343 part/models.py:3659 part/serializers.py:853 -#: part/templates/part/part_app_base.html:8 +#: part/models.py:382 part/models.py:2799 part/models.py:2912 +#: part/models.py:2972 part/models.py:2987 part/models.py:3006 +#: part/models.py:3024 part/models.py:3123 part/models.py:3244 +#: part/models.py:3336 part/models.py:3421 part/models.py:3737 +#: part/serializers.py:894 part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 +#: report/templates/report/inventree_bill_of_materials_report.html:110 +#: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_base.html:109 #: report/templates/report/inventree_po_report.html:89 #: report/templates/report/inventree_so_report.html:90 stock/serializers.py:90 @@ -819,12 +825,12 @@ msgstr "" #: templates/js/translated/order.js:1172 templates/js/translated/order.js:1676 #: templates/js/translated/order.js:2252 templates/js/translated/order.js:3199 #: templates/js/translated/order.js:3595 templates/js/translated/order.js:3825 -#: templates/js/translated/part.js:1208 templates/js/translated/part.js:1280 -#: templates/js/translated/part.js:1474 templates/js/translated/pricing.js:102 -#: templates/js/translated/stock.js:618 templates/js/translated/stock.js:783 -#: templates/js/translated/stock.js:993 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2552 templates/js/translated/stock.js:2747 -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/part.js:1479 templates/js/translated/part.js:1551 +#: templates/js/translated/part.js:1745 templates/js/translated/pricing.js:102 +#: templates/js/translated/stock.js:617 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:992 templates/js/translated/stock.js:1738 +#: templates/js/translated/stock.js:2547 templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2879 msgid "Part" msgstr "" @@ -890,7 +896,7 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:252 order/models.py:87 part/models.py:1001 +#: build/models.py:252 order/models.py:87 part/models.py:1002 #: part/templates/part/part_base.html:318 templates/js/translated/order.js:2858 msgid "Creation Date" msgstr "" @@ -923,7 +929,7 @@ msgstr "" #: build/models.py:283 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:101 #: order/templates/order/order_base.html:185 -#: order/templates/order/sales_order_base.html:183 part/models.py:1005 +#: order/templates/order/sales_order_base.html:183 part/models.py:1006 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2658 templates/js/translated/order.js:2064 msgid "Responsible" @@ -936,7 +942,7 @@ msgstr "" #: build/models.py:289 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:188 -#: part/templates/part/part_base.html:376 stock/models.py:714 +#: part/templates/part/part_base.html:390 stock/models.py:714 #: stock/templates/stock/item_base.html:203 msgid "External Link" msgstr "외부 링크" @@ -1011,8 +1017,8 @@ msgstr "" #: templates/js/translated/order.js:107 templates/js/translated/order.js:3200 #: templates/js/translated/order.js:3502 templates/js/translated/order.js:3507 #: templates/js/translated/order.js:3602 templates/js/translated/order.js:3694 -#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 -#: templates/js/translated/stock.js:2625 +#: templates/js/translated/part.js:803 templates/js/translated/stock.js:618 +#: templates/js/translated/stock.js:783 templates/js/translated/stock.js:2620 msgid "Stock Item" msgstr "" @@ -1022,12 +1028,13 @@ msgstr "" #: build/models.py:1364 build/serializers.py:192 #: build/templates/build/build_base.html:85 -#: build/templates/build/detail.html:34 common/models.py:1842 +#: build/templates/build/detail.html:34 common/models.py:1849 #: order/models.py:934 order/models.py:1460 order/serializers.py:1206 -#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:223 -#: part/forms.py:40 part/models.py:3359 +#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:256 +#: part/forms.py:40 part/models.py:2919 part/models.py:3437 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 +#: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_base.html:113 #: report/templates/report/inventree_po_report.html:90 #: report/templates/report/inventree_so_report.html:91 @@ -1049,13 +1056,14 @@ msgstr "" #: templates/js/translated/order.js:3201 templates/js/translated/order.js:3521 #: templates/js/translated/order.js:3608 templates/js/translated/order.js:3700 #: templates/js/translated/order.js:3847 templates/js/translated/order.js:4338 -#: templates/js/translated/part.js:1078 templates/js/translated/part.js:2568 +#: templates/js/translated/part.js:805 templates/js/translated/part.js:876 +#: templates/js/translated/part.js:1349 templates/js/translated/part.js:2849 #: templates/js/translated/pricing.js:114 #: templates/js/translated/pricing.js:207 #: templates/js/translated/pricing.js:255 -#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:490 -#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:814 -#: templates/js/translated/stock.js:2674 templates/js/translated/stock.js:2759 +#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:489 +#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:813 +#: templates/js/translated/stock.js:2669 templates/js/translated/stock.js:2754 msgid "Quantity" msgstr "수량" @@ -1097,8 +1105,8 @@ msgid "Enter quantity for build output" msgstr "" #: build/serializers.py:207 build/serializers.py:683 order/models.py:327 -#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:645 -#: part/serializers.py:1016 stock/models.py:574 stock/models.py:1312 +#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:686 +#: part/serializers.py:1057 stock/models.py:574 stock/models.py:1312 #: stock/serializers.py:294 msgid "Quantity must be greater than zero" msgstr "수량 값은 0보다 커야 합니다" @@ -1113,7 +1121,7 @@ msgstr "" #: build/serializers.py:231 order/serializers.py:463 order/serializers.py:1210 #: stock/serializers.py:303 templates/js/translated/order.js:1545 -#: templates/js/translated/stock.js:303 templates/js/translated/stock.js:491 +#: templates/js/translated/stock.js:302 templates/js/translated/stock.js:490 msgid "Serial Numbers" msgstr "일련번호" @@ -1146,9 +1154,10 @@ msgstr "" #: templates/js/translated/build.js:1759 templates/js/translated/order.js:1572 #: templates/js/translated/order.js:3514 templates/js/translated/order.js:3619 #: templates/js/translated/order.js:3627 templates/js/translated/order.js:3708 -#: templates/js/translated/part.js:183 templates/js/translated/stock.js:620 -#: templates/js/translated/stock.js:785 templates/js/translated/stock.js:995 -#: templates/js/translated/stock.js:1895 templates/js/translated/stock.js:2566 +#: templates/js/translated/part.js:186 templates/js/translated/part.js:804 +#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 +#: templates/js/translated/stock.js:994 templates/js/translated/stock.js:1890 +#: templates/js/translated/stock.js:2561 msgid "Location" msgstr "위치" @@ -1162,8 +1171,8 @@ msgstr "" #: stock/templates/stock/item_base.html:421 #: templates/js/translated/barcode.js:237 templates/js/translated/build.js:2630 #: templates/js/translated/order.js:1681 templates/js/translated/order.js:2034 -#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1870 -#: templates/js/translated/stock.js:2643 templates/js/translated/stock.js:2775 +#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:2638 templates/js/translated/stock.js:2770 msgid "Status" msgstr "상태" @@ -1239,8 +1248,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:595 build/serializers.py:640 part/models.py:3495 -#: part/models.py:3651 +#: build/serializers.py:595 build/serializers.py:640 part/models.py:3573 +#: part/models.py:3729 msgid "BOM Item" msgstr "" @@ -1406,7 +1415,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2670 templates/js/translated/order.js:2051 #: templates/js/translated/order.js:2382 templates/js/translated/order.js:2866 -#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1093 +#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1364 msgid "Target Date" msgstr "" @@ -1484,8 +1493,8 @@ msgstr "" #: stock/templates/stock/item_base.html:168 #: templates/js/translated/build.js:1250 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:1884 -#: templates/js/translated/stock.js:2782 +#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:1879 +#: templates/js/translated/stock.js:2777 #: templates/js/translated/table_filters.js:179 #: templates/js/translated/table_filters.js:270 msgid "Batch" @@ -1617,8 +1626,8 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:86 #: order/templates/order/sales_order_detail.html:140 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:210 -#: part/templates/part/part_sidebar.html:55 stock/templates/stock/item.html:117 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:233 +#: part/templates/part/part_sidebar.html:60 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" msgstr "" @@ -1635,7 +1644,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:316 +#: build/templates/build/index.html:18 part/templates/part/detail.html:339 msgid "New Build Order" msgstr "" @@ -1928,9 +1937,9 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1014 part/admin.py:41 part/models.py:3168 +#: common/models.py:1014 part/admin.py:41 part/models.py:3246 #: report/models.py:158 templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:504 +#: templates/js/translated/table_filters.js:508 msgid "Template" msgstr "" @@ -1938,7 +1947,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:1021 part/admin.py:37 part/admin.py:229 part/models.py:957 +#: common/models.py:1021 part/admin.py:37 part/admin.py:262 part/models.py:958 #: templates/js/translated/bom.js:1595 #: templates/js/translated/table_filters.js:196 #: templates/js/translated/table_filters.js:467 @@ -1949,7 +1958,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1028 part/admin.py:38 part/models.py:963 +#: common/models.py:1028 part/admin.py:38 part/models.py:964 #: templates/js/translated/table_filters.js:475 msgid "Component" msgstr "" @@ -1958,7 +1967,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1035 part/admin.py:39 part/models.py:974 +#: common/models.py:1035 part/admin.py:39 part/models.py:975 msgid "Purchaseable" msgstr "구입 가능" @@ -1966,7 +1975,7 @@ msgstr "구입 가능" msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1042 part/admin.py:40 part/models.py:979 +#: common/models.py:1042 part/admin.py:40 part/models.py:980 #: templates/js/translated/table_filters.js:496 msgid "Salable" msgstr "판매 가능" @@ -1975,10 +1984,10 @@ msgstr "판매 가능" msgid "Parts are salable by default" msgstr "" -#: common/models.py:1049 part/admin.py:42 part/models.py:969 +#: common/models.py:1049 part/admin.py:42 part/models.py:970 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:120 -#: templates/js/translated/table_filters.js:508 +#: templates/js/translated/table_filters.js:512 msgid "Trackable" msgstr "" @@ -1986,10 +1995,10 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1056 part/admin.py:43 part/models.py:989 +#: common/models.py:1056 part/admin.py:43 part/models.py:990 #: part/templates/part/part_base.html:156 #: templates/js/translated/table_filters.js:42 -#: templates/js/translated/table_filters.js:512 +#: templates/js/translated/table_filters.js:516 msgid "Virtual" msgstr "" @@ -2417,7 +2426,7 @@ msgstr "" msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1461 common/models.py:1803 +#: common/models.py:1461 common/models.py:1810 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -2749,41 +2758,50 @@ msgstr "" msgid "Display part scheduling information" msgstr "" -#: common/models.py:1778 -msgid "Table String Length" +#: common/models.py:1778 part/templates/part/detail.html:61 +#: templates/js/translated/part.js:822 +msgid "Part Stocktake" msgstr "" #: common/models.py:1779 +msgid "Display part stocktake information" +msgstr "" + +#: common/models.py:1785 +msgid "Table String Length" +msgstr "" + +#: common/models.py:1786 msgid "Maximimum length limit for strings displayed in table views" msgstr "" -#: common/models.py:1843 +#: common/models.py:1850 msgid "Price break quantity" msgstr "" -#: common/models.py:1850 company/serializers.py:393 order/models.py:975 -#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1145 +#: common/models.py:1857 company/serializers.py:393 order/models.py:975 +#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1416 #: templates/js/translated/pricing.js:354 msgid "Price" msgstr "" -#: common/models.py:1851 +#: common/models.py:1858 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2011 common/models.py:2189 +#: common/models.py:2018 common/models.py:2196 msgid "Endpoint" msgstr "" -#: common/models.py:2012 +#: common/models.py:2019 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2021 +#: common/models.py:2028 msgid "Name for this webhook" msgstr "" -#: common/models.py:2026 part/admin.py:36 part/models.py:984 +#: common/models.py:2033 part/admin.py:36 part/models.py:985 #: plugin/models.py:100 templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:116 #: templates/js/translated/table_filters.js:336 @@ -2791,131 +2809,133 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:2027 +#: common/models.py:2034 msgid "Is this webhook active" msgstr "" -#: common/models.py:2041 +#: common/models.py:2048 msgid "Token" msgstr "" -#: common/models.py:2042 +#: common/models.py:2049 msgid "Token for access" msgstr "" -#: common/models.py:2049 +#: common/models.py:2056 msgid "Secret" msgstr "" -#: common/models.py:2050 +#: common/models.py:2057 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2156 +#: common/models.py:2163 msgid "Message ID" msgstr "" -#: common/models.py:2157 +#: common/models.py:2164 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2165 +#: common/models.py:2172 msgid "Host" msgstr "" -#: common/models.py:2166 +#: common/models.py:2173 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2173 +#: common/models.py:2180 msgid "Header" msgstr "" -#: common/models.py:2174 +#: common/models.py:2181 msgid "Header of this message" msgstr "" -#: common/models.py:2180 +#: common/models.py:2187 msgid "Body" msgstr "" -#: common/models.py:2181 +#: common/models.py:2188 msgid "Body of this message" msgstr "" -#: common/models.py:2190 +#: common/models.py:2197 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2195 +#: common/models.py:2202 msgid "Worked on" msgstr "" -#: common/models.py:2196 +#: common/models.py:2203 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2355 +#: common/models.py:2362 msgid "Id" msgstr "" -#: common/models.py:2361 templates/js/translated/news.js:35 +#: common/models.py:2368 templates/js/translated/news.js:35 msgid "Title" msgstr "" -#: common/models.py:2371 templates/js/translated/news.js:51 +#: common/models.py:2378 templates/js/translated/news.js:51 msgid "Published" msgstr "" -#: common/models.py:2376 templates/InvenTree/settings/plugin.html:62 +#: common/models.py:2383 templates/InvenTree/settings/plugin.html:62 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/news.js:47 msgid "Author" msgstr "작성자" -#: common/models.py:2381 templates/js/translated/news.js:43 +#: common/models.py:2388 templates/js/translated/news.js:43 msgid "Summary" msgstr "" -#: common/models.py:2386 +#: common/models.py:2393 msgid "Read" msgstr "" -#: common/models.py:2387 +#: common/models.py:2394 msgid "Was this news item read?" msgstr "" -#: common/notifications.py:293 +#: common/notifications.py:294 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:295 +#: common/notifications.py:296 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:301 +#: common/notifications.py:302 msgid "Items Received" msgstr "" -#: common/notifications.py:303 +#: common/notifications.py:304 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:415 +#: common/notifications.py:416 msgid "Error raised by plugin" msgstr "" #: common/views.py:85 order/templates/order/order_wizard/po_upload.html:51 #: order/templates/order/purchase_order_detail.html:25 order/views.py:102 -#: part/views.py:107 templates/patterns/wizard/upload.html:37 +#: part/templates/part/import_wizard/part_upload.html:58 part/views.py:109 +#: templates/patterns/wizard/upload.html:37 msgid "Upload File" msgstr "파일 업로드" #: common/views.py:86 order/templates/order/order_wizard/match_fields.html:52 #: order/views.py:103 #: part/templates/part/import_wizard/ajax_match_fields.html:45 -#: part/views.py:108 templates/patterns/wizard/match_fields.html:51 +#: part/templates/part/import_wizard/match_fields.html:52 part/views.py:110 +#: templates/patterns/wizard/match_fields.html:51 msgid "Match Fields" msgstr "" @@ -2934,7 +2954,9 @@ msgstr "" #: common/views.py:509 order/templates/order/order_wizard/match_fields.html:27 #: order/templates/order/order_wizard/match_parts.html:19 #: order/templates/order/order_wizard/po_upload.html:49 +#: part/templates/part/import_wizard/match_fields.html:27 #: part/templates/part/import_wizard/match_references.html:19 +#: part/templates/part/import_wizard/part_upload.html:56 #: templates/patterns/wizard/match_fields.html:26 #: templates/patterns/wizard/upload.html:35 msgid "Previous Step" @@ -2995,7 +3017,7 @@ msgstr "" msgid "Link to external company information" msgstr "" -#: company/models.py:140 part/models.py:878 +#: company/models.py:140 part/models.py:879 msgid "Image" msgstr "이미지" @@ -3028,8 +3050,8 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:153 company/serializers.py:399 -#: company/templates/company/company_base.html:107 part/models.py:2762 -#: part/serializers.py:154 part/serializers.py:182 stock/serializers.py:182 +#: company/templates/company/company_base.html:107 part/models.py:2780 +#: part/serializers.py:156 part/serializers.py:184 stock/serializers.py:182 #: templates/InvenTree/settings/pricing.html:64 msgid "Currency" msgstr "" @@ -3055,12 +3077,12 @@ msgstr "" #: templates/js/translated/company.js:433 #: templates/js/translated/company.js:534 #: templates/js/translated/company.js:669 -#: templates/js/translated/company.js:957 templates/js/translated/part.js:238 +#: templates/js/translated/company.js:957 templates/js/translated/part.js:241 #: templates/js/translated/table_filters.js:439 msgid "Manufacturer" msgstr "" -#: company/models.py:269 templates/js/translated/part.js:239 +#: company/models.py:269 templates/js/translated/part.js:242 msgid "Select manufacturer" msgstr "" @@ -3070,11 +3092,11 @@ msgstr "" #: templates/js/translated/company.js:533 #: templates/js/translated/company.js:685 #: templates/js/translated/company.js:976 templates/js/translated/order.js:2286 -#: templates/js/translated/part.js:249 templates/js/translated/part.js:1067 +#: templates/js/translated/part.js:252 templates/js/translated/part.js:1338 msgid "MPN" msgstr "" -#: company/models.py:276 templates/js/translated/part.js:250 +#: company/models.py:276 templates/js/translated/part.js:253 msgid "Manufacturer Part Number" msgstr "" @@ -3100,8 +3122,8 @@ msgstr "" #: company/models.py:370 #: report/templates/report/inventree_test_report_base.html:95 #: stock/models.py:2156 templates/js/translated/company.js:582 -#: templates/js/translated/company.js:800 templates/js/translated/part.js:889 -#: templates/js/translated/stock.js:1399 +#: templates/js/translated/company.js:800 templates/js/translated/part.js:1160 +#: templates/js/translated/stock.js:1398 msgid "Value" msgstr "" @@ -3109,10 +3131,10 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:377 part/admin.py:26 part/models.py:951 -#: part/models.py:3128 part/templates/part/part_base.html:286 -#: templates/InvenTree/settings/settings.html:349 -#: templates/js/translated/company.js:806 templates/js/translated/part.js:895 +#: company/models.py:377 part/admin.py:26 part/models.py:952 +#: part/models.py:3206 part/templates/part/part_base.html:286 +#: templates/InvenTree/settings/settings.html:350 +#: templates/js/translated/company.js:806 templates/js/translated/part.js:1166 msgid "Units" msgstr "" @@ -3132,24 +3154,24 @@ msgstr "" #: templates/js/translated/company.js:304 #: templates/js/translated/company.js:437 #: templates/js/translated/company.js:930 templates/js/translated/order.js:2017 -#: templates/js/translated/part.js:219 templates/js/translated/part.js:1035 +#: templates/js/translated/part.js:222 templates/js/translated/part.js:1306 #: templates/js/translated/pricing.js:231 #: templates/js/translated/table_filters.js:443 msgid "Supplier" msgstr "" -#: company/models.py:498 templates/js/translated/part.js:220 +#: company/models.py:498 templates/js/translated/part.js:223 msgid "Select supplier" msgstr "" #: company/models.py:503 company/templates/company/supplier_part.html:146 #: part/bom.py:253 part/bom.py:281 templates/js/translated/company.js:303 -#: templates/js/translated/order.js:2273 templates/js/translated/part.js:230 -#: templates/js/translated/part.js:1053 templates/js/translated/pricing.js:243 +#: templates/js/translated/order.js:2273 templates/js/translated/part.js:233 +#: templates/js/translated/part.js:1324 templates/js/translated/pricing.js:243 msgid "SKU" msgstr "" -#: company/models.py:504 templates/js/translated/part.js:231 +#: company/models.py:504 templates/js/translated/part.js:234 msgid "Supplier stock keeping unit" msgstr "" @@ -3166,24 +3188,25 @@ msgid "Supplier part description" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:181 -#: part/admin.py:225 part/models.py:3381 part/templates/part/upload_bom.html:59 +#: part/admin.py:258 part/models.py:3459 part/templates/part/upload_bom.html:59 +#: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:397 msgid "Note" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "base cost" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:534 company/templates/company/supplier_part.html:167 #: stock/admin.py:101 stock/models.py:682 #: stock/templates/stock/item_base.html:243 -#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2016 +#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2011 msgid "Packaging" msgstr "" @@ -3196,7 +3219,7 @@ msgstr "" #: templates/js/translated/company.js:997 templates/js/translated/order.js:826 #: templates/js/translated/order.js:1253 templates/js/translated/order.js:1508 #: templates/js/translated/order.js:2317 templates/js/translated/order.js:2334 -#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1137 +#: templates/js/translated/part.js:1356 templates/js/translated/part.js:1408 msgid "Pack Quantity" msgstr "" @@ -3204,7 +3227,7 @@ msgstr "" msgid "Unit quantity supplied in a single pack" msgstr "" -#: company/models.py:544 part/models.py:1863 +#: company/models.py:544 part/models.py:1869 msgid "multiple" msgstr "" @@ -3216,8 +3239,8 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:1118 templates/js/translated/build.js:1883 -#: templates/js/translated/build.js:2770 templates/js/translated/part.js:623 -#: templates/js/translated/part.js:626 +#: templates/js/translated/build.js:2770 templates/js/translated/part.js:626 +#: templates/js/translated/part.js:629 #: templates/js/translated/table_filters.js:206 msgid "Available" msgstr "" @@ -3300,7 +3323,7 @@ msgstr "" #: stock/templates/stock/item_base.html:399 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:429 templates/js/translated/order.js:2827 -#: templates/js/translated/stock.js:2607 +#: templates/js/translated/stock.js:2602 #: templates/js/translated/table_filters.js:447 msgid "Customer" msgstr "고객" @@ -3314,7 +3337,7 @@ msgid "Phone" msgstr "전화번호" #: company/templates/company/company_base.html:206 -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:525 msgid "Remove Image" msgstr "" @@ -3323,19 +3346,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:209 -#: part/templates/part/part_base.html:514 +#: part/templates/part/part_base.html:528 #: templates/InvenTree/settings/user.html:87 #: templates/InvenTree/settings/user.html:149 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:238 -#: part/templates/part/part_base.html:543 +#: part/templates/part/part_base.html:557 msgid "Upload Image" msgstr "이미지 업로드" #: company/templates/company/company_base.html:253 -#: part/templates/part/part_base.html:598 +#: part/templates/part/part_base.html:612 msgid "Download Image" msgstr "이미지 다운로드" @@ -3351,7 +3374,7 @@ msgstr "" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:357 +#: part/templates/part/detail.html:380 msgid "New Supplier Part" msgstr "" @@ -3380,7 +3403,7 @@ msgstr "" msgid "Create new manufacturer part" msgstr "" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:387 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:410 msgid "New Manufacturer Part" msgstr "" @@ -3394,9 +3417,9 @@ msgstr "" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:35 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:35 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:200 -#: templates/InvenTree/settings/sidebar.html:49 +#: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:293 templates/navbar.html:50 #: users/models.py:42 msgid "Purchase Orders" @@ -3417,9 +3440,9 @@ msgstr "" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:39 +#: part/templates/part/detail.html:130 part/templates/part/part_sidebar.html:39 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:220 -#: templates/InvenTree/settings/sidebar.html:51 +#: templates/InvenTree/settings/sidebar.html:53 #: templates/js/translated/search.js:317 templates/navbar.html:61 #: users/models.py:43 msgid "Sales Orders" @@ -3451,7 +3474,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:221 -#: part/templates/part/detail.html:87 part/templates/part/part_base.html:85 +#: part/templates/part/detail.html:110 part/templates/part/part_base.html:85 msgid "Order part" msgstr "" @@ -3482,28 +3505,28 @@ msgid "Suppliers" msgstr "" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:368 +#: part/templates/part/detail.html:391 msgid "Delete supplier parts" msgstr "" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:369 part/templates/part/detail.html:399 -#: templates/js/translated/forms.js:455 templates/js/translated/helpers.js:38 -#: templates/js/translated/part.js:351 templates/js/translated/stock.js:188 -#: users/models.py:224 +#: part/templates/part/detail.html:392 part/templates/part/detail.html:422 +#: templates/js/translated/forms.js:458 templates/js/translated/helpers.js:38 +#: templates/js/translated/part.js:354 templates/js/translated/stock.js:187 +#: users/models.py:225 msgid "Delete" msgstr "삭제" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:184 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:207 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:189 +#: part/templates/part/detail.html:212 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:62 msgid "New Parameter" @@ -3514,7 +3537,7 @@ msgid "Delete parameters" msgstr "" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:825 +#: part/templates/part/detail.html:865 msgid "Add Parameter" msgstr "" @@ -3538,7 +3561,7 @@ msgstr "" #: company/templates/company/supplier_part.html:24 stock/models.py:665 #: stock/templates/stock/item_base.html:236 #: templates/js/translated/company.js:946 templates/js/translated/order.js:1173 -#: templates/js/translated/stock.js:1974 +#: templates/js/translated/stock.js:1969 msgid "Supplier Part" msgstr "" @@ -3578,7 +3601,7 @@ msgstr "" #: company/templates/company/supplier_part.html:56 #: company/templates/company/supplier_part.html:57 #: company/templates/company/supplier_part.html:222 -#: part/templates/part/detail.html:88 +#: part/templates/part/detail.html:111 msgid "Order Part" msgstr "" @@ -3630,7 +3653,7 @@ msgstr "" #: company/templates/company/supplier_part.html:204 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:198 -#: templates/js/translated/stock.js:467 +#: templates/js/translated/stock.js:466 msgid "New Stock Item" msgstr "" @@ -3662,10 +3685,10 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 -#: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/part.js:777 templates/js/translated/part.js:1378 -#: templates/js/translated/part.js:1534 templates/js/translated/stock.js:994 -#: templates/js/translated/stock.js:1799 templates/navbar.html:31 +#: templates/InvenTree/settings/sidebar.html:47 +#: templates/js/translated/part.js:1048 templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1805 templates/js/translated/stock.js:993 +#: templates/js/translated/stock.js:1794 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3680,7 +3703,7 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:29 #: part/templates/part/part_sidebar.html:30 -#: templates/InvenTree/settings/sidebar.html:35 +#: templates/InvenTree/settings/sidebar.html:37 msgid "Pricing" msgstr "" @@ -3692,7 +3715,7 @@ msgstr "" #: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:155 templates/js/translated/search.js:225 -#: templates/js/translated/stock.js:2484 users/models.py:40 +#: templates/js/translated/stock.js:2479 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3801,9 +3824,9 @@ msgstr "" #: stock/templates/stock/item_base.html:182 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:619 templates/js/translated/order.js:1174 -#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1012 -#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1954 -#: templates/js/translated/stock.js:2588 +#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1283 +#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1949 +#: templates/js/translated/stock.js:2583 msgid "Purchase Order" msgstr "" @@ -3973,7 +3996,7 @@ msgstr "" #: order/models.py:1046 order/templates/order/order_base.html:178 #: templates/js/translated/order.js:1679 templates/js/translated/order.js:2404 -#: templates/js/translated/part.js:1129 templates/js/translated/part.js:1161 +#: templates/js/translated/part.js:1400 templates/js/translated/part.js:1432 #: templates/js/translated/table_filters.js:358 msgid "Received" msgstr "" @@ -3984,7 +4007,7 @@ msgstr "" #: order/models.py:1054 stock/models.py:800 stock/serializers.py:173 #: stock/templates/stock/item_base.html:189 -#: templates/js/translated/stock.js:2005 +#: templates/js/translated/stock.js:2000 msgid "Purchase Price" msgstr "" @@ -4350,18 +4373,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:9 #: part/templates/part/import_wizard/ajax_match_fields.html:9 +#: part/templates/part/import_wizard/match_fields.html:9 #: templates/patterns/wizard/match_fields.html:8 msgid "Missing selections for the following required columns" msgstr "" #: order/templates/order/order_wizard/match_fields.html:20 #: part/templates/part/import_wizard/ajax_match_fields.html:20 +#: part/templates/part/import_wizard/match_fields.html:20 #: templates/patterns/wizard/match_fields.html:19 msgid "Duplicate selections found, see below. Fix them then retry submitting." msgstr "" #: order/templates/order/order_wizard/match_fields.html:29 #: order/templates/order/order_wizard/match_parts.html:21 +#: part/templates/part/import_wizard/match_fields.html:29 #: part/templates/part/import_wizard/match_references.html:21 #: templates/patterns/wizard/match_fields.html:28 msgid "Submit Selections" @@ -4369,18 +4395,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:35 #: part/templates/part/import_wizard/ajax_match_fields.html:28 +#: part/templates/part/import_wizard/match_fields.html:35 #: templates/patterns/wizard/match_fields.html:34 msgid "File Fields" msgstr "" #: order/templates/order/order_wizard/match_fields.html:42 #: part/templates/part/import_wizard/ajax_match_fields.html:35 +#: part/templates/part/import_wizard/match_fields.html:42 #: templates/patterns/wizard/match_fields.html:41 msgid "Remove column" msgstr "" #: order/templates/order/order_wizard/match_fields.html:60 #: part/templates/part/import_wizard/ajax_match_fields.html:53 +#: part/templates/part/import_wizard/match_fields.html:60 #: templates/patterns/wizard/match_fields.html:59 msgid "Duplicate selection" msgstr "" @@ -4389,12 +4418,13 @@ msgstr "" #: order/templates/order/order_wizard/match_parts.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: 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:102 templates/js/translated/build.js:485 #: templates/js/translated/build.js:641 templates/js/translated/build.js:2088 #: templates/js/translated/order.js:1122 templates/js/translated/order.js:1624 -#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:657 -#: templates/js/translated/stock.js:825 +#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:824 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4429,6 +4459,7 @@ msgstr "" #: order/templates/order/order_wizard/po_upload.html:27 #: part/templates/part/import_wizard/ajax_part_upload.html:10 +#: part/templates/part/import_wizard/part_upload.html:26 #: templates/patterns/wizard/upload.html:13 #, python-format msgid "Step %(step)s of %(count)s" @@ -4567,12 +4598,12 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:19 part/admin.py:219 part/models.py:3262 stock/admin.py:84 +#: part/admin.py:19 part/admin.py:252 part/models.py:3340 stock/admin.py:84 #: templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/admin.py:20 part/admin.py:221 part/models.py:3266 stock/admin.py:85 +#: part/admin.py:20 part/admin.py:254 part/models.py:3344 stock/admin.py:85 msgid "Part Name" msgstr "" @@ -4580,32 +4611,32 @@ msgstr "" msgid "Part Description" msgstr "" -#: part/admin.py:22 part/models.py:852 part/templates/part/part_base.html:272 -#: templates/js/translated/part.js:763 templates/js/translated/part.js:1491 -#: templates/js/translated/stock.js:1765 +#: part/admin.py:22 part/models.py:853 part/templates/part/part_base.html:272 +#: templates/js/translated/part.js:1034 templates/js/translated/part.js:1762 +#: templates/js/translated/stock.js:1760 msgid "IPN" msgstr "" -#: part/admin.py:23 part/models.py:860 part/templates/part/part_base.html:279 -#: report/models.py:171 templates/js/translated/part.js:768 +#: part/admin.py:23 part/models.py:861 part/templates/part/part_base.html:279 +#: report/models.py:171 templates/js/translated/part.js:1039 msgid "Revision" msgstr "" -#: part/admin.py:24 part/admin.py:145 part/models.py:838 +#: part/admin.py:24 part/admin.py:178 part/models.py:839 #: part/templates/part/category.html:87 part/templates/part/part_base.html:300 msgid "Keywords" msgstr "" -#: part/admin.py:28 part/admin.py:139 +#: part/admin.py:28 part/admin.py:172 #: templates/js/translated/model_renderers.js:338 msgid "Category ID" msgstr "" -#: part/admin.py:29 part/admin.py:140 +#: part/admin.py:29 part/admin.py:173 msgid "Category Name" msgstr "" -#: part/admin.py:30 part/admin.py:144 +#: part/admin.py:30 part/admin.py:177 msgid "Default Location ID" msgstr "" @@ -4613,7 +4644,7 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:33 part/models.py:944 part/templates/part/part_base.html:206 +#: part/admin.py:33 part/models.py:945 part/templates/part/part_base.html:206 msgid "Minimum Stock" msgstr "" @@ -4625,8 +4656,8 @@ msgstr "" #: part/admin.py:48 part/bom.py:145 part/templates/part/part_base.html:213 #: templates/js/translated/bom.js:1156 templates/js/translated/build.js:1935 -#: templates/js/translated/part.js:613 templates/js/translated/part.js:633 -#: templates/js/translated/part.js:1381 templates/js/translated/part.js:1559 +#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 +#: templates/js/translated/part.js:1652 templates/js/translated/part.js:1830 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4642,115 +4673,115 @@ msgid "Allocated" msgstr "" #: part/admin.py:51 part/templates/part/part_base.html:244 -#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 -#: templates/js/translated/part.js:1385 templates/js/translated/part.js:1566 +#: templates/js/translated/part.js:619 templates/js/translated/part.js:639 +#: templates/js/translated/part.js:1656 templates/js/translated/part.js:1837 msgid "Building" msgstr "" -#: part/admin.py:52 part/models.py:2846 +#: part/admin.py:52 part/models.py:2864 msgid "Minimum Cost" msgstr "" -#: part/admin.py:53 part/models.py:2852 +#: part/admin.py:53 part/models.py:2870 msgid "Maximum Cost" msgstr "" -#: part/admin.py:142 part/admin.py:216 stock/admin.py:26 stock/admin.py:98 +#: part/admin.py:175 part/admin.py:249 stock/admin.py:26 stock/admin.py:98 msgid "Parent ID" msgstr "" -#: part/admin.py:143 part/admin.py:218 stock/admin.py:27 +#: part/admin.py:176 part/admin.py:251 stock/admin.py:27 msgid "Parent Name" msgstr "" -#: part/admin.py:146 part/templates/part/category.html:81 +#: part/admin.py:179 part/templates/part/category.html:81 #: part/templates/part/category.html:94 msgid "Category Path" msgstr "" -#: part/admin.py:149 part/models.py:382 part/templates/part/cat_link.html:3 +#: part/admin.py:182 part/models.py:383 part/templates/part/cat_link.html:3 #: part/templates/part/category.html:23 part/templates/part/category.html:134 #: part/templates/part/category.html:154 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:84 -#: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:2065 templates/js/translated/search.js:146 +#: templates/InvenTree/settings/sidebar.html:43 +#: templates/js/translated/part.js:2346 templates/js/translated/search.js:146 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" -#: part/admin.py:211 +#: part/admin.py:244 msgid "BOM Level" msgstr "" -#: part/admin.py:213 +#: part/admin.py:246 msgid "BOM Item ID" msgstr "" -#: part/admin.py:217 +#: part/admin.py:250 msgid "Parent IPN" msgstr "" -#: part/admin.py:220 part/models.py:3270 +#: part/admin.py:253 part/models.py:3348 msgid "Part IPN" msgstr "" -#: part/admin.py:226 templates/js/translated/pricing.js:91 +#: part/admin.py:259 templates/js/translated/pricing.js:91 #: templates/js/translated/pricing.js:732 msgid "Minimum Price" msgstr "" -#: part/admin.py:227 templates/js/translated/pricing.js:86 +#: part/admin.py:260 templates/js/translated/pricing.js:86 #: templates/js/translated/pricing.js:740 msgid "Maximum Price" msgstr "" -#: part/api.py:536 +#: part/api.py:538 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:556 +#: part/api.py:558 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:574 +#: part/api.py:576 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:660 +#: part/api.py:662 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:818 +#: part/api.py:820 msgid "Valid" msgstr "" -#: part/api.py:819 +#: part/api.py:821 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:825 +#: part/api.py:827 msgid "This option must be selected" msgstr "" -#: part/api.py:1265 +#: part/api.py:1281 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1269 +#: part/api.py:1285 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1284 +#: part/api.py:1300 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1315 part/api.py:1319 part/api.py:1334 part/api.py:1338 +#: part/api.py:1331 part/api.py:1335 part/api.py:1350 part/api.py:1354 msgid "This field is required" msgstr "" -#: part/bom.py:142 part/models.py:116 part/models.py:887 -#: part/templates/part/category.html:109 part/templates/part/part_base.html:360 +#: part/bom.py:142 part/models.py:116 part/models.py:888 +#: part/templates/part/category.html:109 part/templates/part/part_base.html:374 msgid "Default Location" msgstr "" @@ -4801,7 +4832,7 @@ msgstr "" msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:159 part/models.py:3211 part/templates/part/category.html:16 +#: part/models.py:159 part/models.py:3289 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -4812,423 +4843,459 @@ msgstr "" msgid "Part Categories" msgstr "" -#: part/models.py:468 +#: part/models.py:469 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:538 part/models.py:550 +#: part/models.py:539 part/models.py:551 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:640 +#: part/models.py:641 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:771 +#: part/models.py:772 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:776 +#: part/models.py:777 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:790 +#: part/models.py:791 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:808 part/models.py:3267 +#: part/models.py:809 part/models.py:3345 msgid "Part name" msgstr "" -#: part/models.py:815 +#: part/models.py:816 msgid "Is Template" msgstr "" -#: part/models.py:816 +#: part/models.py:817 msgid "Is this part a template part?" msgstr "" -#: part/models.py:826 +#: part/models.py:827 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:827 +#: part/models.py:828 msgid "Variant Of" msgstr "" -#: part/models.py:833 +#: part/models.py:834 msgid "Part description" msgstr "" -#: part/models.py:839 +#: part/models.py:840 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:846 part/models.py:2966 part/models.py:3210 +#: part/models.py:847 part/models.py:3044 part/models.py:3288 #: part/templates/part/part_base.html:263 -#: templates/InvenTree/settings/settings.html:229 +#: templates/InvenTree/settings/settings.html:230 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1513 templates/js/translated/part.js:1770 +#: templates/js/translated/part.js:1784 templates/js/translated/part.js:2051 msgid "Category" msgstr "" -#: part/models.py:847 +#: part/models.py:848 msgid "Part category" msgstr "" -#: part/models.py:853 +#: part/models.py:854 msgid "Internal Part Number" msgstr "" -#: part/models.py:859 +#: part/models.py:860 msgid "Part revision or version number" msgstr "" -#: part/models.py:885 +#: part/models.py:886 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:930 part/templates/part/part_base.html:369 +#: part/models.py:931 part/templates/part/part_base.html:383 msgid "Default Supplier" msgstr "" -#: part/models.py:931 +#: part/models.py:932 msgid "Default supplier part" msgstr "" -#: part/models.py:938 +#: part/models.py:939 msgid "Default Expiry" msgstr "" -#: part/models.py:939 +#: part/models.py:940 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:945 +#: part/models.py:946 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:952 +#: part/models.py:953 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:958 +#: part/models.py:959 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:964 +#: part/models.py:965 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:970 +#: part/models.py:971 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:975 +#: part/models.py:976 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:980 +#: part/models.py:981 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:985 +#: part/models.py:986 msgid "Is this part active?" msgstr "" -#: part/models.py:990 +#: part/models.py:991 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:992 +#: part/models.py:993 msgid "Part notes" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "BOM checksum" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:997 +#: part/models.py:998 msgid "BOM checked by" msgstr "" -#: part/models.py:999 +#: part/models.py:1000 msgid "BOM checked date" msgstr "" -#: part/models.py:1003 +#: part/models.py:1004 msgid "Creation User" msgstr "" -#: part/models.py:1863 +#: part/models.py:1010 part/templates/part/part_base.html:345 +#: stock/templates/stock/item_base.html:445 +#: templates/js/translated/part.js:1901 +msgid "Last Stocktake" +msgstr "" + +#: part/models.py:1869 msgid "Sell multiple" msgstr "" -#: part/models.py:2763 +#: part/models.py:2781 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:2768 +#: part/models.py:2786 templates/js/translated/part.js:806 msgid "Updated" msgstr "" -#: part/models.py:2769 +#: part/models.py:2787 msgid "Timestamp of last pricing update" msgstr "" -#: part/models.py:2786 +#: part/models.py:2804 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:2787 +#: part/models.py:2805 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:2792 +#: part/models.py:2810 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:2793 +#: part/models.py:2811 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:2798 +#: part/models.py:2816 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:2799 +#: part/models.py:2817 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:2804 +#: part/models.py:2822 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:2805 +#: part/models.py:2823 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:2810 +#: part/models.py:2828 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:2811 +#: part/models.py:2829 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:2816 +#: part/models.py:2834 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:2817 +#: part/models.py:2835 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:2822 +#: part/models.py:2840 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:2823 +#: part/models.py:2841 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:2828 +#: part/models.py:2846 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:2829 +#: part/models.py:2847 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:2834 +#: part/models.py:2852 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:2835 +#: part/models.py:2853 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:2840 +#: part/models.py:2858 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:2841 +#: part/models.py:2859 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:2847 +#: part/models.py:2865 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:2853 +#: part/models.py:2871 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:2858 +#: part/models.py:2876 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:2859 +#: part/models.py:2877 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:2864 +#: part/models.py:2882 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:2865 +#: part/models.py:2883 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:2870 +#: part/models.py:2888 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:2871 +#: part/models.py:2889 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:2876 +#: part/models.py:2894 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:2877 +#: part/models.py:2895 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3013 +#: part/models.py:2913 +msgid "Part for stocktake" +msgstr "" + +#: part/models.py:2920 +msgid "Total available stock at time of stocktake" +msgstr "" + +#: part/models.py:2924 part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:63 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:2043 templates/js/translated/part.js:887 +#: templates/js/translated/pricing.js:537 +#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2511 +msgid "Date" +msgstr "" + +#: part/models.py:2925 +msgid "Date stocktake was performed" +msgstr "" + +#: part/models.py:2933 +msgid "Additional notes" +msgstr "" + +#: part/models.py:2941 +msgid "User who performed this stocktake" +msgstr "" + +#: part/models.py:3091 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3030 +#: part/models.py:3108 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:3050 templates/js/translated/part.js:2116 -#: templates/js/translated/stock.js:1379 +#: part/models.py:3128 templates/js/translated/part.js:2397 +#: templates/js/translated/stock.js:1378 msgid "Test Name" msgstr "" -#: part/models.py:3051 +#: part/models.py:3129 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3056 +#: part/models.py:3134 msgid "Test Description" msgstr "" -#: part/models.py:3057 +#: part/models.py:3135 msgid "Enter description for this test" msgstr "" -#: part/models.py:3062 templates/js/translated/part.js:2125 +#: part/models.py:3140 templates/js/translated/part.js:2406 #: templates/js/translated/table_filters.js:322 msgid "Required" msgstr "" -#: part/models.py:3063 +#: part/models.py:3141 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3068 templates/js/translated/part.js:2133 +#: part/models.py:3146 templates/js/translated/part.js:2414 msgid "Requires Value" msgstr "" -#: part/models.py:3069 +#: part/models.py:3147 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3074 templates/js/translated/part.js:2140 +#: part/models.py:3152 templates/js/translated/part.js:2421 msgid "Requires Attachment" msgstr "" -#: part/models.py:3075 +#: part/models.py:3153 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3116 +#: part/models.py:3194 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3124 +#: part/models.py:3202 msgid "Parameter Name" msgstr "" -#: part/models.py:3128 +#: part/models.py:3206 msgid "Parameter Units" msgstr "" -#: part/models.py:3133 +#: part/models.py:3211 msgid "Parameter description" msgstr "" -#: part/models.py:3166 +#: part/models.py:3244 msgid "Parent Part" msgstr "" -#: part/models.py:3168 part/models.py:3216 part/models.py:3217 -#: templates/InvenTree/settings/settings.html:224 +#: part/models.py:3246 part/models.py:3294 part/models.py:3295 +#: templates/InvenTree/settings/settings.html:225 msgid "Parameter Template" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Data" msgstr "데이터" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Parameter Value" msgstr "" -#: part/models.py:3221 templates/InvenTree/settings/settings.html:233 +#: part/models.py:3299 templates/InvenTree/settings/settings.html:234 msgid "Default Value" msgstr "" -#: part/models.py:3222 +#: part/models.py:3300 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3259 +#: part/models.py:3337 msgid "Part ID or part name" msgstr "" -#: part/models.py:3263 +#: part/models.py:3341 msgid "Unique part ID value" msgstr "" -#: part/models.py:3271 +#: part/models.py:3349 msgid "Part IPN value" msgstr "" -#: part/models.py:3274 +#: part/models.py:3352 msgid "Level" msgstr "" -#: part/models.py:3275 +#: part/models.py:3353 msgid "BOM level" msgstr "" -#: part/models.py:3344 +#: part/models.py:3422 msgid "Select parent part" msgstr "" -#: part/models.py:3352 +#: part/models.py:3430 msgid "Sub part" msgstr "" -#: part/models.py:3353 +#: part/models.py:3431 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:3359 +#: part/models.py:3437 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:3363 part/templates/part/upload_bom.html:58 +#: part/models.py:3441 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:933 templates/js/translated/bom.js:986 #: templates/js/translated/build.js:1868 #: templates/js/translated/table_filters.js:84 @@ -5236,189 +5303,189 @@ msgstr "" msgid "Optional" msgstr "" -#: part/models.py:3364 +#: part/models.py:3442 msgid "This BOM item is optional" msgstr "" -#: part/models.py:3369 templates/js/translated/bom.js:929 +#: part/models.py:3447 templates/js/translated/bom.js:929 #: templates/js/translated/bom.js:995 templates/js/translated/build.js:1859 #: templates/js/translated/table_filters.js:88 msgid "Consumable" msgstr "" -#: part/models.py:3370 +#: part/models.py:3448 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:3374 part/templates/part/upload_bom.html:55 +#: part/models.py:3452 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:3375 +#: part/models.py:3453 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:3378 +#: part/models.py:3456 msgid "BOM item reference" msgstr "" -#: part/models.py:3381 +#: part/models.py:3459 msgid "BOM item notes" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "Checksum" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "BOM line checksum" msgstr "" -#: part/models.py:3387 part/templates/part/upload_bom.html:57 +#: part/models.py:3465 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1012 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:108 msgid "Inherited" msgstr "" -#: part/models.py:3388 +#: part/models.py:3466 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:3393 part/templates/part/upload_bom.html:56 +#: part/models.py:3471 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1004 msgid "Allow Variants" msgstr "" -#: part/models.py:3394 +#: part/models.py:3472 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:3480 stock/models.py:558 +#: part/models.py:3558 stock/models.py:558 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:3489 part/models.py:3491 +#: part/models.py:3567 part/models.py:3569 msgid "Sub part must be specified" msgstr "" -#: part/models.py:3618 +#: part/models.py:3696 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:3639 +#: part/models.py:3717 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:3652 +#: part/models.py:3730 msgid "Parent BOM item" msgstr "" -#: part/models.py:3660 +#: part/models.py:3738 msgid "Substitute part" msgstr "" -#: part/models.py:3675 +#: part/models.py:3753 msgid "Part 1" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Part 2" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Select Related Part" msgstr "" -#: part/models.py:3697 +#: part/models.py:3775 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:3701 +#: part/models.py:3779 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:155 part/serializers.py:183 stock/serializers.py:183 +#: part/serializers.py:157 part/serializers.py:185 stock/serializers.py:183 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:543 +#: part/serializers.py:584 msgid "Update" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:585 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:854 +#: part/serializers.py:895 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:862 +#: part/serializers.py:903 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:863 +#: part/serializers.py:904 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:868 +#: part/serializers.py:909 msgid "Include Inherited" msgstr "" -#: part/serializers.py:869 +#: part/serializers.py:910 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:874 +#: part/serializers.py:915 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:875 +#: part/serializers.py:916 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:921 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:881 +#: part/serializers.py:922 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:962 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:922 +#: part/serializers.py:963 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:952 +#: part/serializers.py:993 msgid "No part column specified" msgstr "" -#: part/serializers.py:995 +#: part/serializers.py:1036 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:998 +#: part/serializers.py:1039 msgid "No matching part found" msgstr "" -#: part/serializers.py:1001 +#: part/serializers.py:1042 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1010 +#: part/serializers.py:1051 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1059 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1039 +#: part/serializers.py:1080 msgid "At least one BOM item is required" msgstr "" @@ -5450,7 +5517,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:267 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:290 msgid "BOM actions" msgstr "" @@ -5507,8 +5574,8 @@ msgstr "" msgid "New Part" msgstr "" -#: part/templates/part/category.html:169 part/templates/part/detail.html:366 -#: part/templates/part/detail.html:397 +#: part/templates/part/category.html:169 part/templates/part/detail.html:389 +#: part/templates/part/detail.html:420 msgid "Options" msgstr "" @@ -5556,7 +5623,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:404 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:407 msgid "Duplicate Part" msgstr "" @@ -5593,118 +5660,128 @@ msgstr "" msgid "Refresh" msgstr "" -#: part/templates/part/detail.html:59 +#: part/templates/part/detail.html:65 +msgid "Add stocktake information" +msgstr "" + +#: part/templates/part/detail.html:66 part/templates/part/part_sidebar.html:49 +#: stock/admin.py:107 templates/js/translated/stock.js:1905 +msgid "Stocktake" +msgstr "" + +#: part/templates/part/detail.html:82 msgid "Part Test Templates" msgstr "" -#: part/templates/part/detail.html:64 +#: part/templates/part/detail.html:87 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:144 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:141 +#: part/templates/part/detail.html:164 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:156 +#: part/templates/part/detail.html:179 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:160 +#: part/templates/part/detail.html:183 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:161 +#: part/templates/part/detail.html:184 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:188 +#: part/templates/part/detail.html:211 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:225 part/templates/part/part_sidebar.html:52 +#: part/templates/part/detail.html:248 part/templates/part/part_sidebar.html:57 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:229 part/templates/part/detail.html:230 +#: part/templates/part/detail.html:252 part/templates/part/detail.html:253 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:250 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:273 part/templates/part/part_sidebar.html:17 +#: report/templates/report/inventree_bill_of_materials_report.html:100 msgid "Bill of Materials" msgstr "부품 명세서" -#: part/templates/part/detail.html:255 +#: part/templates/part/detail.html:278 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:259 templates/js/translated/bom.js:309 +#: part/templates/part/detail.html:282 templates/js/translated/bom.js:309 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:261 +#: part/templates/part/detail.html:284 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:271 +#: part/templates/part/detail.html:294 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:272 templates/js/translated/part.js:276 +#: part/templates/part/detail.html:295 templates/js/translated/part.js:279 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:273 +#: part/templates/part/detail.html:296 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:278 part/templates/part/detail.html:279 +#: part/templates/part/detail.html:301 part/templates/part/detail.html:302 #: templates/js/translated/bom.js:1268 templates/js/translated/bom.js:1269 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:292 +#: part/templates/part/detail.html:315 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:310 +#: part/templates/part/detail.html:333 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:337 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:360 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:353 +#: part/templates/part/detail.html:376 msgid "Part Suppliers" msgstr "" -#: part/templates/part/detail.html:383 +#: part/templates/part/detail.html:406 msgid "Part Manufacturers" msgstr "" -#: part/templates/part/detail.html:399 +#: part/templates/part/detail.html:422 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:696 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:704 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:796 msgid "Add Test Result Template" msgstr "" #: part/templates/part/import_wizard/ajax_part_upload.html:29 #: part/templates/part/import_wizard/part_upload.html:14 -msgid "Unsuffitient privileges." +msgid "Insufficient privileges." msgstr "" #: part/templates/part/import_wizard/part_upload.html:8 @@ -5715,6 +5792,34 @@ msgstr "" msgid "Import Parts from File" msgstr "" +#: part/templates/part/import_wizard/part_upload.html:31 +msgid "Requirements for part import" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "The part import file must contain the required named columns as provided in the " +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:89 +msgid "Download Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:92 +#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 +#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 +msgid "Format" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:93 +#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 +#: templates/js/translated/order.js:999 +msgid "Select file format" +msgstr "" + #: part/templates/part/part_app_base.html:12 msgid "Part List" msgstr "" @@ -5804,12 +5909,12 @@ msgstr "" #: templates/js/translated/company.js:660 #: templates/js/translated/company.js:921 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:677 templates/js/translated/part.js:755 +#: templates/js/translated/part.js:680 templates/js/translated/part.js:1026 msgid "Inactive" msgstr "" #: part/templates/part/part_base.html:165 -#: part/templates/part/part_base.html:666 +#: part/templates/part/part_base.html:680 msgid "Show Part Details" msgstr "" @@ -5837,38 +5942,38 @@ msgid "Minimum stock level" msgstr "" #: part/templates/part/part_base.html:330 templates/js/translated/bom.js:1032 -#: templates/js/translated/part.js:798 templates/js/translated/part.js:1604 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:1875 #: templates/js/translated/pricing.js:124 #: templates/js/translated/pricing.js:762 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:345 +#: part/templates/part/part_base.html:359 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:349 +#: part/templates/part/part_base.html:363 #: stock/templates/stock/item_base.html:331 msgid "Search for serial number" msgstr "일련번호 검색" -#: part/templates/part/part_base.html:449 +#: part/templates/part/part_base.html:463 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:495 +#: part/templates/part/part_base.html:509 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:512 +#: part/templates/part/part_base.html:526 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:564 +#: part/templates/part/part_base.html:578 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:660 +#: part/templates/part/part_base.html:674 msgid "Hide Part Details" msgstr "" @@ -5920,15 +6025,6 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" -#: part/templates/part/part_scheduling.html:13 -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:63 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:2043 templates/js/translated/pricing.js:537 -#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2516 -msgid "Date" -msgstr "" - #: part/templates/part/part_scheduling.html:14 msgid "Scheduled Quantity" msgstr "" @@ -5941,7 +6037,7 @@ msgstr "" msgid "Scheduling" msgstr "" -#: part/templates/part/part_sidebar.html:48 +#: part/templates/part/part_sidebar.html:53 msgid "Test Templates" msgstr "" @@ -5960,7 +6056,7 @@ msgstr "" #: part/templates/part/prices.html:25 stock/admin.py:106 #: stock/templates/stock/item_base.html:440 #: templates/js/translated/company.js:1039 -#: templates/js/translated/stock.js:1940 +#: templates/js/translated/stock.js:1935 msgid "Last Updated" msgstr "" @@ -6023,8 +6119,8 @@ msgstr "" msgid "Add Sell Price Break" msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:639 -#: templates/js/translated/part.js:1373 templates/js/translated/part.js:1375 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:1644 templates/js/translated/part.js:1646 msgid "No Stock" msgstr "" @@ -6087,27 +6183,32 @@ msgstr "" msgid "{title} v{version}" msgstr "" -#: part/views.py:109 +#: part/views.py:111 msgid "Match References" msgstr "" -#: part/views.py:354 +#: part/views.py:239 +#, python-brace-format +msgid "Can't import part {name} because there is no category assigned" +msgstr "" + +#: part/views.py:378 msgid "Part QR Code" msgstr "" -#: part/views.py:372 +#: part/views.py:396 msgid "Select Part Image" msgstr "" -#: part/views.py:398 +#: part/views.py:422 msgid "Updated part image" msgstr "" -#: part/views.py:401 +#: part/views.py:425 msgid "Part image not found" msgstr "" -#: part/views.py:493 +#: part/views.py:517 msgid "Part Pricing" msgstr "" @@ -6156,28 +6257,48 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:29 -#: plugin/builtin/integration/core_notifications.py:31 +#: plugin/builtin/integration/core_notifications.py:33 msgid "InvenTree contributors" msgstr "" -#: plugin/builtin/integration/core_notifications.py:30 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:32 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notificaton methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:37 -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:80 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:38 -#: plugin/builtin/integration/core_notifications.py:57 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:81 msgid "Allow sending of emails for event notifications" msgstr "" +#: plugin/builtin/integration/core_notifications.py:45 +msgid "Enable slack notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:46 +msgid "Allow sending of slack channel messages for event notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:51 +msgid "Slack incoming webhook url" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:52 +msgid "URL that is used to send messages to a slack channel" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:162 +msgid "Open link" +msgstr "" + #: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" @@ -6409,6 +6530,10 @@ msgstr "" msgid "Asset file description" msgstr "" +#: report/templates/report/inventree_bill_of_materials_report.html:133 +msgid "Materials needed" +msgstr "" + #: report/templates/report/inventree_build_order_base.html:146 msgid "Required For" msgstr "" @@ -6427,7 +6552,7 @@ msgstr "" #: templates/js/translated/build.js:1244 templates/js/translated/build.js:1745 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:121 templates/js/translated/order.js:3611 -#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:522 +#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:521 msgid "Serial Number" msgstr "일련번호" @@ -6459,8 +6584,9 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: stock/admin.py:87 templates/js/translated/stock.js:642 -#: templates/js/translated/stock.js:812 templates/js/translated/stock.js:2765 +#: stock/admin.py:87 templates/js/translated/part.js:749 +#: templates/js/translated/stock.js:641 templates/js/translated/stock.js:811 +#: templates/js/translated/stock.js:2760 msgid "Serial" msgstr "" @@ -6515,13 +6641,9 @@ msgstr "" msgid "Purchase Order ID" msgstr "" -#: stock/admin.py:107 templates/js/translated/stock.js:1910 -msgid "Stocktake" -msgstr "" - #: stock/admin.py:108 stock/models.py:764 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/stock.js:1924 +#: templates/js/translated/stock.js:1919 msgid "Expiry Date" msgstr "" @@ -6936,7 +7058,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2912 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2907 msgid "Install Stock Item" msgstr "" @@ -6944,7 +7066,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1561 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1560 msgid "Add Test Result" msgstr "" @@ -7117,10 +7239,6 @@ msgstr "" msgid "Stale" msgstr "" -#: stock/templates/stock/item_base.html:445 -msgid "Last Stocktake" -msgstr "" - #: stock/templates/stock/item_base.html:449 msgid "No stocktake performed" msgstr "" @@ -7394,7 +7512,8 @@ msgstr "" #: templates/InvenTree/notifications/notifications.html:10 #: templates/InvenTree/notifications/sidebar.html:5 -#: templates/InvenTree/settings/sidebar.html:17 templates/notifications.html:5 +#: templates/InvenTree/settings/sidebar.html:17 +#: templates/InvenTree/settings/sidebar.html:35 templates/notifications.html:5 msgid "Notifications" msgstr "" @@ -7475,6 +7594,14 @@ msgstr "" msgid "Open in new tab" msgstr "새 탭에서 열기" +#: templates/InvenTree/settings/notifications.html:9 +msgid "Global Notification Settings" +msgstr "" + +#: templates/InvenTree/settings/notifications.html:18 +msgid "Slug" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -7492,7 +7619,7 @@ msgid "Part Parameter Templates" msgstr "" #: templates/InvenTree/settings/plugin.html:10 -#: templates/InvenTree/settings/sidebar.html:55 +#: templates/InvenTree/settings/sidebar.html:57 msgid "Plugin Settings" msgstr "" @@ -7501,7 +7628,7 @@ msgid "Changing the settings below require you to immediately restart the server msgstr "" #: templates/InvenTree/settings/plugin.html:38 -#: templates/InvenTree/settings/sidebar.html:57 +#: templates/InvenTree/settings/sidebar.html:59 msgid "Plugins" msgstr "" @@ -7669,67 +7796,67 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:117 +#: templates/InvenTree/settings/settings.html:118 msgid "Edit Plugin Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:119 +#: templates/InvenTree/settings/settings.html:120 msgid "Edit Notification Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:122 +#: templates/InvenTree/settings/settings.html:123 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:124 +#: templates/InvenTree/settings/settings.html:125 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:214 +#: templates/InvenTree/settings/settings.html:215 msgid "No category parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:236 -#: templates/InvenTree/settings/settings.html:361 -msgid "Edit Template" -msgstr "" - #: templates/InvenTree/settings/settings.html:237 #: templates/InvenTree/settings/settings.html:362 +msgid "Edit Template" +msgstr "" + +#: templates/InvenTree/settings/settings.html:238 +#: templates/InvenTree/settings/settings.html:363 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:277 +#: templates/InvenTree/settings/settings.html:278 msgid "Create Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:322 +#: templates/InvenTree/settings/settings.html:323 msgid "Delete Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:334 +#: templates/InvenTree/settings/settings.html:335 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:338 +#: templates/InvenTree/settings/settings.html:339 #: templates/js/translated/news.js:29 #: templates/js/translated/notification.js:36 msgid "ID" msgstr "" -#: templates/InvenTree/settings/settings.html:380 +#: templates/InvenTree/settings/settings.html:381 msgid "Create Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:399 +#: templates/InvenTree/settings/settings.html:400 msgid "Edit Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:413 +#: templates/InvenTree/settings/settings.html:414 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/InvenTree/settings/settings.html:421 +#: templates/InvenTree/settings/settings.html:422 msgid "Delete Part Parameter Template" msgstr "" @@ -7758,12 +7885,12 @@ msgid "Search Settings" msgstr "" #: templates/InvenTree/settings/sidebar.html:19 -#: templates/InvenTree/settings/sidebar.html:37 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Label Printing" msgstr "" #: templates/InvenTree/settings/sidebar.html:21 -#: templates/InvenTree/settings/sidebar.html:39 +#: templates/InvenTree/settings/sidebar.html:41 msgid "Reporting" msgstr "" @@ -7775,7 +7902,7 @@ msgstr "" msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:43 +#: templates/InvenTree/settings/sidebar.html:45 msgid "Categories" msgstr "" @@ -7945,64 +8072,64 @@ msgstr "" msgid "Do you really want to remove the selected email address?" msgstr "선택한 이메일 주소를 정말로 제거하시겠습니까?" -#: templates/InvenTree/settings/user_display.html:28 +#: templates/InvenTree/settings/user_display.html:29 msgid "Theme Settings" msgstr "테마 설정" -#: templates/InvenTree/settings/user_display.html:38 +#: templates/InvenTree/settings/user_display.html:39 msgid "Select theme" msgstr "테마 선택" -#: templates/InvenTree/settings/user_display.html:49 +#: templates/InvenTree/settings/user_display.html:50 msgid "Set Theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:57 +#: templates/InvenTree/settings/user_display.html:58 msgid "Language Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:66 +#: templates/InvenTree/settings/user_display.html:67 msgid "Select language" msgstr "" -#: templates/InvenTree/settings/user_display.html:82 +#: templates/InvenTree/settings/user_display.html:83 #, python-format msgid "%(lang_translated)s%% translated" msgstr "" -#: templates/InvenTree/settings/user_display.html:84 +#: templates/InvenTree/settings/user_display.html:85 msgid "No translations available" msgstr "" -#: templates/InvenTree/settings/user_display.html:91 +#: templates/InvenTree/settings/user_display.html:92 msgid "Set Language" msgstr "" -#: templates/InvenTree/settings/user_display.html:94 +#: templates/InvenTree/settings/user_display.html:95 msgid "Some languages are not complete" msgstr "" -#: templates/InvenTree/settings/user_display.html:96 +#: templates/InvenTree/settings/user_display.html:97 msgid "Show only sufficent" msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "and hidden." msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "Show them too" msgstr "" -#: templates/InvenTree/settings/user_display.html:105 +#: templates/InvenTree/settings/user_display.html:106 msgid "Help the translation efforts!" msgstr "" -#: templates/InvenTree/settings/user_display.html:106 +#: templates/InvenTree/settings/user_display.html:107 msgid "Native language translation of the web application is community contributed via crowdin. Contributions are welcomed and encouraged." msgstr "" -#: templates/InvenTree/settings/user_display.html:107 +#: templates/InvenTree/settings/user_display.html:108 msgid "InvenTree Translation Project" msgstr "" @@ -8080,7 +8207,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:646 +#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:649 msgid "Confirm" msgstr "확인" @@ -8313,7 +8440,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 -#: templates/js/translated/part.js:2445 +#: templates/js/translated/part.js:2726 msgid "Minimum Quantity" msgstr "" @@ -8466,7 +8593,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1089 +#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1088 msgid "Remove stock item" msgstr "" @@ -8548,16 +8675,6 @@ msgstr "" msgid "Download BOM Template" msgstr "" -#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 -#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 -msgid "Format" -msgstr "" - -#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 -#: templates/js/translated/order.js:999 -msgid "Select file format" -msgstr "" - #: templates/js/translated/bom.js:320 msgid "Multi Level BOM" msgstr "" @@ -8688,7 +8805,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:1145 templates/js/translated/build.js:1923 -#: templates/js/translated/part.js:790 templates/js/translated/part.js:1572 +#: templates/js/translated/part.js:1061 templates/js/translated/part.js:1843 msgid "Includes variant stock" msgstr "" @@ -8773,13 +8890,13 @@ msgstr "" msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:317 templates/js/translated/stock.js:95 -#: templates/js/translated/stock.js:237 +#: templates/js/translated/build.js:317 templates/js/translated/stock.js:94 +#: templates/js/translated/stock.js:236 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:319 templates/js/translated/stock.js:97 -#: templates/js/translated/stock.js:239 +#: templates/js/translated/build.js:319 templates/js/translated/stock.js:96 +#: templates/js/translated/stock.js:238 msgid "Latest serial number" msgstr "" @@ -8987,9 +9104,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1466 -#: templates/js/translated/part.js:2003 templates/js/translated/stock.js:1725 -#: templates/js/translated/stock.js:2428 +#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1737 +#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1724 +#: templates/js/translated/stock.js:2423 msgid "Select" msgstr "선택" @@ -9001,7 +9118,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2695 +#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2690 msgid "No user information" msgstr "" @@ -9074,34 +9191,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:652 -#: templates/js/translated/company.js:913 templates/js/translated/part.js:661 -#: templates/js/translated/part.js:747 +#: templates/js/translated/company.js:913 templates/js/translated/part.js:664 +#: templates/js/translated/part.js:1018 msgid "Template part" msgstr "" #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:917 templates/js/translated/part.js:665 -#: templates/js/translated/part.js:751 +#: templates/js/translated/company.js:917 templates/js/translated/part.js:668 +#: templates/js/translated/part.js:1022 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:784 templates/js/translated/part.js:870 +#: templates/js/translated/company.js:784 templates/js/translated/part.js:1141 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:821 templates/js/translated/part.js:912 +#: templates/js/translated/company.js:821 templates/js/translated/part.js:1183 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:822 templates/js/translated/part.js:913 +#: templates/js/translated/company.js:822 templates/js/translated/part.js:1184 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:841 templates/js/translated/part.js:930 +#: templates/js/translated/company.js:841 templates/js/translated/part.js:1201 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:852 templates/js/translated/part.js:942 +#: templates/js/translated/company.js:852 templates/js/translated/part.js:1213 msgid "Delete Parameter" msgstr "" @@ -9181,61 +9298,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:369 templates/js/translated/forms.js:384 -#: templates/js/translated/forms.js:398 templates/js/translated/forms.js:412 +#: templates/js/translated/forms.js:372 templates/js/translated/forms.js:387 +#: templates/js/translated/forms.js:401 templates/js/translated/forms.js:415 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:371 +#: templates/js/translated/forms.js:374 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:386 +#: templates/js/translated/forms.js:389 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:400 +#: templates/js/translated/forms.js:403 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:414 +#: templates/js/translated/forms.js:417 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:672 +#: templates/js/translated/forms.js:675 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:773 +#: templates/js/translated/forms.js:776 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1266 templates/modals.html:19 +#: templates/js/translated/forms.js:1269 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1703 +#: templates/js/translated/forms.js:1706 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1919 templates/search.html:29 +#: templates/js/translated/forms.js:1922 templates/search.html:29 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2172 +#: templates/js/translated/forms.js:2175 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:2640 +#: templates/js/translated/forms.js:2643 msgid "Select Columns" msgstr "" @@ -9256,7 +9373,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1113 +#: templates/js/translated/stock.js:1112 msgid "Select Stock Items" msgstr "" @@ -9590,7 +9707,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2184 +#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2179 msgid "Stock Status" msgstr "" @@ -9614,7 +9731,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1982 templates/js/translated/part.js:983 +#: templates/js/translated/order.js:1982 templates/js/translated/part.js:1254 msgid "No purchase orders found" msgstr "" @@ -9647,8 +9764,8 @@ msgstr "" msgid "Total" msgstr "" -#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1085 -#: templates/js/translated/part.js:1137 +#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1356 +#: templates/js/translated/part.js:1408 msgid "Total Quantity" msgstr "" @@ -9666,11 +9783,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2388 templates/js/translated/order.js:3900 -#: templates/js/translated/part.js:1121 +#: templates/js/translated/part.js:1392 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1166 +#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1437 msgid "Receive line item" msgstr "" @@ -9791,7 +9908,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3623 templates/js/translated/order.js:3712 -#: templates/js/translated/stock.js:1641 +#: templates/js/translated/stock.js:1640 msgid "Shipped to customer" msgstr "" @@ -9835,334 +9952,358 @@ msgstr "" msgid "No matching lines" msgstr "" -#: templates/js/translated/part.js:52 +#: templates/js/translated/part.js:55 msgid "Part Attributes" msgstr "" -#: templates/js/translated/part.js:56 +#: templates/js/translated/part.js:59 msgid "Part Creation Options" msgstr "" -#: templates/js/translated/part.js:60 +#: templates/js/translated/part.js:63 msgid "Part Duplication Options" msgstr "" -#: templates/js/translated/part.js:64 +#: templates/js/translated/part.js:67 msgid "Supplier Options" msgstr "" -#: templates/js/translated/part.js:78 +#: templates/js/translated/part.js:81 msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:168 +#: templates/js/translated/part.js:171 msgid "Create Initial Stock" msgstr "" -#: templates/js/translated/part.js:169 +#: templates/js/translated/part.js:172 msgid "Create an initial stock item for this part" msgstr "" -#: templates/js/translated/part.js:176 +#: templates/js/translated/part.js:179 msgid "Initial Stock Quantity" msgstr "" -#: templates/js/translated/part.js:177 +#: templates/js/translated/part.js:180 msgid "Specify initial stock quantity for this part" msgstr "" -#: templates/js/translated/part.js:184 +#: templates/js/translated/part.js:187 msgid "Select destination stock location" msgstr "" -#: templates/js/translated/part.js:202 +#: templates/js/translated/part.js:205 msgid "Copy Category Parameters" msgstr "" -#: templates/js/translated/part.js:203 +#: templates/js/translated/part.js:206 msgid "Copy parameter templates from selected part category" msgstr "" -#: templates/js/translated/part.js:211 +#: templates/js/translated/part.js:214 msgid "Add Supplier Data" msgstr "" -#: templates/js/translated/part.js:212 +#: templates/js/translated/part.js:215 msgid "Create initial supplier data for this part" msgstr "" -#: templates/js/translated/part.js:268 +#: templates/js/translated/part.js:271 msgid "Copy Image" msgstr "이미지 복사" -#: templates/js/translated/part.js:269 +#: templates/js/translated/part.js:272 msgid "Copy image from original part" msgstr "" -#: templates/js/translated/part.js:277 +#: templates/js/translated/part.js:280 msgid "Copy bill of materials from original part" msgstr "" -#: templates/js/translated/part.js:284 +#: templates/js/translated/part.js:287 msgid "Copy Parameters" msgstr "" -#: templates/js/translated/part.js:285 +#: templates/js/translated/part.js:288 msgid "Copy parameter data from original part" msgstr "" -#: templates/js/translated/part.js:298 +#: templates/js/translated/part.js:301 msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:313 templates/js/translated/stock.js:122 +#: templates/js/translated/part.js:316 templates/js/translated/stock.js:121 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:329 +#: templates/js/translated/part.js:332 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:342 +#: templates/js/translated/part.js:345 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:347 +#: templates/js/translated/part.js:350 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:359 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:360 +#: templates/js/translated/part.js:363 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:368 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:394 +#: templates/js/translated/part.js:397 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:396 +#: templates/js/translated/part.js:399 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:407 +#: templates/js/translated/part.js:410 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:459 +#: templates/js/translated/part.js:462 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:460 +#: templates/js/translated/part.js:463 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:477 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:476 +#: templates/js/translated/part.js:479 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:477 +#: templates/js/translated/part.js:480 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:478 +#: templates/js/translated/part.js:481 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:485 +#: templates/js/translated/part.js:488 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:521 +#: templates/js/translated/part.js:524 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:523 +#: templates/js/translated/part.js:526 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:531 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:530 +#: templates/js/translated/part.js:533 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:547 +#: templates/js/translated/part.js:550 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:560 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:560 +#: templates/js/translated/part.js:563 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:585 +#: templates/js/translated/part.js:588 msgid "Copy Bill of Materials" msgstr "부품 명세서 복사" -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1554 +#: templates/js/translated/part.js:612 templates/js/translated/part.js:1825 #: templates/js/translated/table_filters.js:488 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:622 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:653 templates/js/translated/part.js:739 +#: templates/js/translated/part.js:656 templates/js/translated/part.js:1010 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:657 templates/js/translated/part.js:743 +#: templates/js/translated/part.js:660 templates/js/translated/part.js:1014 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:669 +#: templates/js/translated/part.js:672 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:673 +#: templates/js/translated/part.js:676 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:815 +#: templates/js/translated/part.js:761 +msgid "Stock item has not been checked recently" +msgstr "" + +#: templates/js/translated/part.js:769 +msgid "Update item" +msgstr "" + +#: templates/js/translated/part.js:770 +msgid "Delete item" +msgstr "" + +#: templates/js/translated/part.js:871 +msgid "No stocktake information available" +msgstr "" + +#: templates/js/translated/part.js:910 templates/js/translated/part.js:933 +msgid "Edit Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:914 templates/js/translated/part.js:945 +msgid "Delete Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:1086 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1236 +#: templates/js/translated/part.js:1507 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1260 +#: templates/js/translated/part.js:1531 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1327 templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1598 templates/js/translated/part.js:1936 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1521 +#: templates/js/translated/part.js:1792 msgid "No category" msgstr "" -#: templates/js/translated/part.js:1552 +#: templates/js/translated/part.js:1823 msgid "No stock" msgstr "" -#: templates/js/translated/part.js:1576 +#: templates/js/translated/part.js:1847 msgid "Allocated to build orders" msgstr "" -#: templates/js/translated/part.js:1580 +#: templates/js/translated/part.js:1851 msgid "Allocated to sales orders" msgstr "" -#: templates/js/translated/part.js:1679 templates/js/translated/part.js:1922 -#: templates/js/translated/stock.js:2387 +#: templates/js/translated/part.js:1960 templates/js/translated/part.js:2203 +#: templates/js/translated/stock.js:2382 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1695 +#: templates/js/translated/part.js:1976 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1761 +#: templates/js/translated/part.js:2042 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1766 +#: templates/js/translated/part.js:2047 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1771 +#: templates/js/translated/part.js:2052 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1784 +#: templates/js/translated/part.js:2065 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1942 templates/js/translated/stock.js:2407 +#: templates/js/translated/part.js:2223 templates/js/translated/stock.js:2402 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2022 +#: templates/js/translated/part.js:2303 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2038 +#: templates/js/translated/part.js:2319 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2383 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2153 templates/js/translated/stock.js:1338 +#: templates/js/translated/part.js:2434 templates/js/translated/stock.js:1337 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2154 templates/js/translated/stock.js:1339 -#: templates/js/translated/stock.js:1599 +#: templates/js/translated/part.js:2435 templates/js/translated/stock.js:1338 +#: templates/js/translated/stock.js:1598 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2441 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2182 +#: templates/js/translated/part.js:2463 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2196 +#: templates/js/translated/part.js:2477 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2277 templates/js/translated/part.js:2278 +#: templates/js/translated/part.js:2558 templates/js/translated/part.js:2559 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2280 +#: templates/js/translated/part.js:2561 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:2286 +#: templates/js/translated/part.js:2567 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:2336 +#: templates/js/translated/part.js:2617 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2623 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:2438 +#: templates/js/translated/part.js:2719 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2454 +#: templates/js/translated/part.js:2735 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:2499 +#: templates/js/translated/part.js:2780 msgid "Minimum Stock Level" msgstr "" @@ -10290,388 +10431,388 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:74 +#: templates/js/translated/stock.js:73 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:104 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:114 +#: templates/js/translated/stock.js:113 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:148 +#: templates/js/translated/stock.js:147 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:163 +#: templates/js/translated/stock.js:162 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:177 +#: templates/js/translated/stock.js:176 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:184 +#: templates/js/translated/stock.js:183 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:193 +#: templates/js/translated/stock.js:192 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:197 +#: templates/js/translated/stock.js:196 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:201 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:256 +#: templates/js/translated/stock.js:255 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:298 +#: templates/js/translated/stock.js:297 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:304 +#: templates/js/translated/stock.js:303 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:368 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:389 +#: templates/js/translated/stock.js:388 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:405 +#: templates/js/translated/stock.js:404 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:410 +#: templates/js/translated/stock.js:409 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:431 +#: templates/js/translated/stock.js:430 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:481 +#: templates/js/translated/stock.js:480 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:494 +#: templates/js/translated/stock.js:493 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:519 +#: templates/js/translated/stock.js:518 msgid "Find Serial Number" msgstr "일련번호 찾기" -#: templates/js/translated/stock.js:523 templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:522 templates/js/translated/stock.js:523 msgid "Enter serial number" msgstr "일련번호를 입력하세요" -#: templates/js/translated/stock.js:540 +#: templates/js/translated/stock.js:539 msgid "Enter a serial number" msgstr "일련번호를 입력하세요" -#: templates/js/translated/stock.js:560 +#: templates/js/translated/stock.js:559 msgid "No matching serial number" msgstr "일치하는 일련번호가 없습니다" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:568 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:692 +#: templates/js/translated/stock.js:691 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:693 +#: templates/js/translated/stock.js:692 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:770 +#: templates/js/translated/stock.js:769 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:771 +#: templates/js/translated/stock.js:770 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:773 +#: templates/js/translated/stock.js:772 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:774 +#: templates/js/translated/stock.js:773 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:863 +#: templates/js/translated/stock.js:862 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:864 +#: templates/js/translated/stock.js:863 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:958 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:959 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:966 +#: templates/js/translated/stock.js:965 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:967 +#: templates/js/translated/stock.js:966 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:971 +#: templates/js/translated/stock.js:970 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:972 +#: templates/js/translated/stock.js:971 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:976 +#: templates/js/translated/stock.js:975 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:977 users/models.py:220 +#: templates/js/translated/stock.js:976 users/models.py:221 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:981 +#: templates/js/translated/stock.js:980 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1114 +#: templates/js/translated/stock.js:1113 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1141 +#: templates/js/translated/stock.js:1140 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1277 +#: templates/js/translated/stock.js:1276 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1279 +#: templates/js/translated/stock.js:1278 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1284 +#: templates/js/translated/stock.js:1283 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1331 +#: templates/js/translated/stock.js:1330 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1334 +#: templates/js/translated/stock.js:1333 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1360 +#: templates/js/translated/stock.js:1359 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1417 +#: templates/js/translated/stock.js:1416 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1582 +#: templates/js/translated/stock.js:1581 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1604 +#: templates/js/translated/stock.js:1603 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1633 +#: templates/js/translated/stock.js:1632 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1637 +#: templates/js/translated/stock.js:1636 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1645 +#: templates/js/translated/stock.js:1644 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1651 +#: templates/js/translated/stock.js:1650 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1820 +#: templates/js/translated/stock.js:1815 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1825 +#: templates/js/translated/stock.js:1820 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1828 +#: templates/js/translated/stock.js:1823 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1831 +#: templates/js/translated/stock.js:1826 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1833 +#: templates/js/translated/stock.js:1828 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1835 +#: templates/js/translated/stock.js:1830 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1838 +#: templates/js/translated/stock.js:1833 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1837 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1844 +#: templates/js/translated/stock.js:1839 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1846 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1853 +#: templates/js/translated/stock.js:1848 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1855 +#: templates/js/translated/stock.js:1850 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1859 +#: templates/js/translated/stock.js:1854 #: templates/js/translated/table_filters.js:216 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1989 +#: templates/js/translated/stock.js:1984 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2026 +#: templates/js/translated/stock.js:2021 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2199 +#: templates/js/translated/stock.js:2194 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2213 +#: templates/js/translated/stock.js:2208 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2214 +#: templates/js/translated/stock.js:2209 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2446 +#: templates/js/translated/stock.js:2441 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2536 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2557 +#: templates/js/translated/stock.js:2552 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2579 +#: templates/js/translated/stock.js:2574 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2598 +#: templates/js/translated/stock.js:2593 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2617 +#: templates/js/translated/stock.js:2612 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2635 +#: templates/js/translated/stock.js:2630 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2658 +#: templates/js/translated/stock.js:2653 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2666 +#: templates/js/translated/stock.js:2661 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2737 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2793 templates/js/translated/stock.js:2829 +#: templates/js/translated/stock.js:2788 templates/js/translated/stock.js:2824 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2845 +#: templates/js/translated/stock.js:2840 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2866 +#: templates/js/translated/stock.js:2861 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2867 +#: templates/js/translated/stock.js:2862 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2869 +#: templates/js/translated/stock.js:2864 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2870 +#: templates/js/translated/stock.js:2865 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:2866 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2872 +#: templates/js/translated/stock.js:2867 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2885 +#: templates/js/translated/stock.js:2880 msgid "Select part to install" msgstr "" @@ -10696,7 +10837,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:92 -#: templates/js/translated/table_filters.js:516 +#: templates/js/translated/table_filters.js:520 msgid "Has Pricing" msgstr "" @@ -10912,6 +11053,10 @@ msgstr "" msgid "Purchasable" msgstr "" +#: templates/js/translated/table_filters.js:504 +msgid "Has stocktake entries" +msgstr "" + #: templates/js/translated/tables.js:70 msgid "Display calendar view" msgstr "" @@ -11206,35 +11351,35 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:207 +#: users/models.py:208 msgid "Permission set" msgstr "" -#: users/models.py:215 +#: users/models.py:216 msgid "Group" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "View" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "Permission to view items" msgstr "" -#: users/models.py:220 +#: users/models.py:221 msgid "Permission to add items" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Change" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Permissions to edit items" msgstr "" -#: users/models.py:224 +#: users/models.py:225 msgid "Permission to delete items" msgstr "" diff --git a/InvenTree/locale/nl/LC_MESSAGES/django.po b/InvenTree/locale/nl/LC_MESSAGES/django.po index 7b6ac17227..33e631ee1b 100644 --- a/InvenTree/locale/nl/LC_MESSAGES/django.po +++ b/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: 2022-12-30 20:46+0000\n" -"PO-Revision-Date: 2022-12-31 11:29\n" +"POT-Creation-Date: 2023-01-01 11:05+0000\n" +"PO-Revision-Date: 2023-01-01 11:26\n" "Last-Translator: \n" "Language-Team: Dutch\n" "Language: nl_NL\n" @@ -34,7 +34,7 @@ msgstr "Voer datum in" #: company/templates/company/sidebar.html:25 order/models.py:943 #: order/templates/order/po_sidebar.html:11 #: order/templates/order/so_sidebar.html:17 part/admin.py:27 -#: part/templates/part/part_sidebar.html:57 +#: part/models.py:2932 part/templates/part/part_sidebar.html:62 #: report/templates/report/inventree_build_order_base.html:172 #: stock/admin.py:103 stock/models.py:2061 stock/models.py:2169 #: stock/serializers.py:321 stock/serializers.py:454 stock/serializers.py:535 @@ -44,8 +44,8 @@ msgstr "Voer datum in" #: templates/js/translated/company.js:1023 #: templates/js/translated/order.js:2435 templates/js/translated/order.js:2569 #: templates/js/translated/order.js:3067 templates/js/translated/order.js:4004 -#: templates/js/translated/order.js:4385 templates/js/translated/stock.js:1413 -#: templates/js/translated/stock.js:2020 +#: templates/js/translated/order.js:4385 templates/js/translated/part.js:882 +#: templates/js/translated/stock.js:1412 templates/js/translated/stock.js:2015 msgid "Notes" msgstr "Opmerkingen" @@ -204,18 +204,18 @@ msgstr "Bijlage" msgid "Select file to attach" msgstr "Bestand als bijlage selecteren" -#: InvenTree/models.py:412 common/models.py:2366 company/models.py:129 +#: InvenTree/models.py:412 common/models.py:2373 company/models.py:129 #: company/models.py:281 company/models.py:516 order/models.py:85 -#: order/models.py:1282 part/admin.py:25 part/models.py:865 +#: order/models.py:1282 part/admin.py:25 part/models.py:866 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: stock/admin.py:102 templates/js/translated/company.js:692 #: templates/js/translated/company.js:1012 -#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1615 +#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1886 msgid "Link" msgstr "Link" -#: InvenTree/models.py:413 build/models.py:290 part/models.py:866 +#: InvenTree/models.py:413 build/models.py:290 part/models.py:867 #: stock/models.py:716 msgid "Link to external URL" msgstr "Link naar externe URL" @@ -229,12 +229,13 @@ msgstr "Opmerking" msgid "File comment" msgstr "Bestand opmerking" -#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1810 -#: common/models.py:1811 common/models.py:2034 common/models.py:2035 -#: common/models.py:2296 common/models.py:2297 part/models.py:2948 -#: part/models.py:2968 plugin/models.py:264 plugin/models.py:265 +#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1817 +#: common/models.py:1818 common/models.py:2041 common/models.py:2042 +#: common/models.py:2303 common/models.py:2304 part/models.py:2940 +#: part/models.py:3026 part/models.py:3046 plugin/models.py:264 +#: plugin/models.py:265 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2689 +#: templates/js/translated/stock.js:2684 msgid "User" msgstr "Gebruiker" @@ -271,19 +272,20 @@ msgstr "Fout bij hernoemen bestand" msgid "Invalid choice" msgstr "Ongeldige keuze" -#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2020 -#: company/models.py:363 label/models.py:101 part/models.py:809 -#: part/models.py:3123 plugin/models.py:94 report/models.py:152 +#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2027 +#: company/models.py:363 label/models.py:101 part/models.py:810 +#: part/models.py:3201 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 +#: templates/InvenTree/settings/notifications.html:17 #: templates/InvenTree/settings/plugin.html:60 #: templates/InvenTree/settings/plugin.html:104 #: templates/InvenTree/settings/plugin_settings.html:23 -#: templates/InvenTree/settings/settings.html:344 +#: templates/InvenTree/settings/settings.html:345 #: templates/js/translated/company.js:581 #: templates/js/translated/company.js:794 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:711 templates/js/translated/part.js:880 -#: templates/js/translated/part.js:2010 templates/js/translated/stock.js:2434 +#: templates/js/translated/part.js:982 templates/js/translated/part.js:1151 +#: templates/js/translated/part.js:2291 templates/js/translated/stock.js:2429 msgid "Name" msgstr "Naam" @@ -292,24 +294,25 @@ msgstr "Naam" #: company/models.py:522 company/templates/company/company_base.html:72 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:108 label/models.py:108 -#: order/models.py:83 part/admin.py:141 part/admin.py:222 part/models.py:832 -#: part/models.py:3132 part/templates/part/category.html:75 +#: order/models.py:83 part/admin.py:174 part/admin.py:255 part/models.py:833 +#: part/models.py:3210 part/templates/part/category.html:75 #: part/templates/part/part_base.html:172 #: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/admin.py:25 stock/templates/stock/location.html:117 +#: templates/InvenTree/settings/notifications.html:19 #: templates/InvenTree/settings/plugin_settings.html:28 -#: templates/InvenTree/settings/settings.html:355 +#: templates/InvenTree/settings/settings.html:356 #: templates/js/translated/bom.js:592 templates/js/translated/bom.js:895 #: templates/js/translated/build.js:2596 templates/js/translated/company.js:445 #: templates/js/translated/company.js:703 #: templates/js/translated/company.js:987 templates/js/translated/order.js:2030 #: templates/js/translated/order.js:2267 templates/js/translated/order.js:2845 -#: templates/js/translated/part.js:773 templates/js/translated/part.js:1223 -#: templates/js/translated/part.js:1497 templates/js/translated/part.js:2046 -#: templates/js/translated/part.js:2121 templates/js/translated/stock.js:1787 -#: templates/js/translated/stock.js:2466 templates/js/translated/stock.js:2526 +#: templates/js/translated/part.js:1044 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1768 templates/js/translated/part.js:2327 +#: templates/js/translated/part.js:2402 templates/js/translated/stock.js:1782 +#: templates/js/translated/stock.js:2461 templates/js/translated/stock.js:2521 msgid "Description" msgstr "Omschrijving" @@ -322,7 +325,7 @@ msgid "parent" msgstr "bovenliggende" #: InvenTree/models.py:580 InvenTree/models.py:581 -#: templates/js/translated/part.js:2055 templates/js/translated/stock.js:2475 +#: templates/js/translated/part.js:2336 templates/js/translated/stock.js:2470 msgid "Path" msgstr "Pad" @@ -354,7 +357,7 @@ msgstr "Serverfout" msgid "An error has been logged by the server." msgstr "Er is een fout gelogd door de server." -#: InvenTree/serializers.py:58 part/models.py:3468 +#: InvenTree/serializers.py:58 part/models.py:3546 msgid "Must be a valid number" msgstr "Moet een geldig nummer zijn" @@ -421,107 +424,107 @@ msgstr "URL van extern afbeeldingsbestand" msgid "Downloading images from remote URL is not enabled" msgstr "Afbeeldingen van externe URL downloaden is niet ingeschakeld" -#: InvenTree/settings.py:639 +#: InvenTree/settings.py:642 msgid "Czech" msgstr "Tsjechisch" -#: InvenTree/settings.py:640 +#: InvenTree/settings.py:643 msgid "Danish" msgstr "" -#: InvenTree/settings.py:641 +#: InvenTree/settings.py:644 msgid "German" msgstr "Duits" -#: InvenTree/settings.py:642 +#: InvenTree/settings.py:645 msgid "Greek" msgstr "Grieks" -#: InvenTree/settings.py:643 +#: InvenTree/settings.py:646 msgid "English" msgstr "Engels" -#: InvenTree/settings.py:644 +#: InvenTree/settings.py:647 msgid "Spanish" msgstr "Spaans" -#: InvenTree/settings.py:645 +#: InvenTree/settings.py:648 msgid "Spanish (Mexican)" msgstr "Spaans (Mexicaans)" -#: InvenTree/settings.py:646 +#: InvenTree/settings.py:649 msgid "Farsi / Persian" msgstr "Farsi / Perzisch" -#: InvenTree/settings.py:647 +#: InvenTree/settings.py:650 msgid "French" msgstr "Frans" -#: InvenTree/settings.py:648 +#: InvenTree/settings.py:651 msgid "Hebrew" msgstr "Hebreeuws" -#: InvenTree/settings.py:649 +#: InvenTree/settings.py:652 msgid "Hungarian" msgstr "Hongaars" -#: InvenTree/settings.py:650 +#: InvenTree/settings.py:653 msgid "Italian" msgstr "Italiaans" -#: InvenTree/settings.py:651 +#: InvenTree/settings.py:654 msgid "Japanese" msgstr "Japans" -#: InvenTree/settings.py:652 +#: InvenTree/settings.py:655 msgid "Korean" msgstr "Koreaans" -#: InvenTree/settings.py:653 +#: InvenTree/settings.py:656 msgid "Dutch" msgstr "Nederlands" -#: InvenTree/settings.py:654 +#: InvenTree/settings.py:657 msgid "Norwegian" msgstr "Noors" -#: InvenTree/settings.py:655 +#: InvenTree/settings.py:658 msgid "Polish" msgstr "Pools" -#: InvenTree/settings.py:656 +#: InvenTree/settings.py:659 msgid "Portuguese" msgstr "Portugees" -#: InvenTree/settings.py:657 +#: InvenTree/settings.py:660 msgid "Portuguese (Brazilian)" msgstr "Portugees (Braziliaans)" -#: InvenTree/settings.py:658 +#: InvenTree/settings.py:661 msgid "Russian" msgstr "Russisch" -#: InvenTree/settings.py:659 +#: InvenTree/settings.py:662 msgid "Slovenian" msgstr "" -#: InvenTree/settings.py:660 +#: InvenTree/settings.py:663 msgid "Swedish" msgstr "Zweeds" -#: InvenTree/settings.py:661 +#: InvenTree/settings.py:664 msgid "Thai" msgstr "Thais" -#: InvenTree/settings.py:662 +#: InvenTree/settings.py:665 msgid "Turkish" msgstr "Turks" -#: InvenTree/settings.py:663 +#: InvenTree/settings.py:666 msgid "Vietnamese" msgstr "Vietnamees" -#: InvenTree/settings.py:664 +#: InvenTree/settings.py:667 msgid "Chinese" msgstr "Chinees" @@ -652,7 +655,7 @@ msgstr "Splits van bovenliggend item" msgid "Split child item" msgstr "Splits onderliggende item" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2124 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2119 msgid "Merged stock items" msgstr "Samengevoegde voorraadartikelen" @@ -756,7 +759,7 @@ msgstr "Productieorder" #: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:141 -#: templates/InvenTree/settings/sidebar.html:47 +#: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:254 users/models.py:41 msgid "Build Orders" msgstr "Productieorders" @@ -766,8 +769,9 @@ msgid "Build Order Reference" msgstr "Productieorderreferentie" #: build/models.py:155 order/models.py:241 order/models.py:651 -#: order/models.py:941 part/admin.py:224 part/models.py:3378 +#: order/models.py:941 part/admin.py:257 part/models.py:3456 #: part/templates/part/upload_bom.html:54 +#: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 #: templates/js/translated/bom.js:729 templates/js/translated/bom.js:905 @@ -793,13 +797,15 @@ msgstr "Productieorder waar deze productie aan is toegewezen" #: build/models.py:180 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:684 #: order/models.py:1038 order/models.py:1149 order/models.py:1150 -#: part/models.py:381 part/models.py:2781 part/models.py:2894 -#: part/models.py:2909 part/models.py:2928 part/models.py:2946 -#: part/models.py:3045 part/models.py:3166 part/models.py:3258 -#: part/models.py:3343 part/models.py:3659 part/serializers.py:853 -#: part/templates/part/part_app_base.html:8 +#: part/models.py:382 part/models.py:2799 part/models.py:2912 +#: part/models.py:2972 part/models.py:2987 part/models.py:3006 +#: part/models.py:3024 part/models.py:3123 part/models.py:3244 +#: part/models.py:3336 part/models.py:3421 part/models.py:3737 +#: part/serializers.py:894 part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 +#: report/templates/report/inventree_bill_of_materials_report.html:110 +#: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_base.html:109 #: report/templates/report/inventree_po_report.html:89 #: report/templates/report/inventree_so_report.html:90 stock/serializers.py:90 @@ -819,12 +825,12 @@ msgstr "Productieorder waar deze productie aan is toegewezen" #: templates/js/translated/order.js:1172 templates/js/translated/order.js:1676 #: templates/js/translated/order.js:2252 templates/js/translated/order.js:3199 #: templates/js/translated/order.js:3595 templates/js/translated/order.js:3825 -#: templates/js/translated/part.js:1208 templates/js/translated/part.js:1280 -#: templates/js/translated/part.js:1474 templates/js/translated/pricing.js:102 -#: templates/js/translated/stock.js:618 templates/js/translated/stock.js:783 -#: templates/js/translated/stock.js:993 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2552 templates/js/translated/stock.js:2747 -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/part.js:1479 templates/js/translated/part.js:1551 +#: templates/js/translated/part.js:1745 templates/js/translated/pricing.js:102 +#: templates/js/translated/stock.js:617 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:992 templates/js/translated/stock.js:1738 +#: templates/js/translated/stock.js:2547 templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2879 msgid "Part" msgstr "Onderdeel" @@ -890,7 +896,7 @@ msgstr "Batchcode" msgid "Batch code for this build output" msgstr "Batchcode voor deze productieuitvoer" -#: build/models.py:252 order/models.py:87 part/models.py:1001 +#: build/models.py:252 order/models.py:87 part/models.py:1002 #: part/templates/part/part_base.html:318 templates/js/translated/order.js:2858 msgid "Creation Date" msgstr "Aanmaakdatum" @@ -923,7 +929,7 @@ msgstr "Gebruiker die de productieorder heeft gegeven" #: build/models.py:283 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:101 #: order/templates/order/order_base.html:185 -#: order/templates/order/sales_order_base.html:183 part/models.py:1005 +#: order/templates/order/sales_order_base.html:183 part/models.py:1006 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2658 templates/js/translated/order.js:2064 msgid "Responsible" @@ -936,7 +942,7 @@ msgstr "Gebruiker verantwoordelijk voor deze productieorder" #: build/models.py:289 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:188 -#: part/templates/part/part_base.html:376 stock/models.py:714 +#: part/templates/part/part_base.html:390 stock/models.py:714 #: stock/templates/stock/item_base.html:203 msgid "External Link" msgstr "Externe Link" @@ -1011,8 +1017,8 @@ msgstr "Product om onderdelen toe te wijzen" #: templates/js/translated/order.js:107 templates/js/translated/order.js:3200 #: templates/js/translated/order.js:3502 templates/js/translated/order.js:3507 #: templates/js/translated/order.js:3602 templates/js/translated/order.js:3694 -#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 -#: templates/js/translated/stock.js:2625 +#: templates/js/translated/part.js:803 templates/js/translated/stock.js:618 +#: templates/js/translated/stock.js:783 templates/js/translated/stock.js:2620 msgid "Stock Item" msgstr "Voorraadartikel" @@ -1022,12 +1028,13 @@ msgstr "Bron voorraadartikel" #: build/models.py:1364 build/serializers.py:192 #: build/templates/build/build_base.html:85 -#: build/templates/build/detail.html:34 common/models.py:1842 +#: build/templates/build/detail.html:34 common/models.py:1849 #: order/models.py:934 order/models.py:1460 order/serializers.py:1206 -#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:223 -#: part/forms.py:40 part/models.py:3359 +#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:256 +#: part/forms.py:40 part/models.py:2919 part/models.py:3437 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 +#: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_base.html:113 #: report/templates/report/inventree_po_report.html:90 #: report/templates/report/inventree_so_report.html:91 @@ -1049,13 +1056,14 @@ msgstr "Bron voorraadartikel" #: templates/js/translated/order.js:3201 templates/js/translated/order.js:3521 #: templates/js/translated/order.js:3608 templates/js/translated/order.js:3700 #: templates/js/translated/order.js:3847 templates/js/translated/order.js:4338 -#: templates/js/translated/part.js:1078 templates/js/translated/part.js:2568 +#: templates/js/translated/part.js:805 templates/js/translated/part.js:876 +#: templates/js/translated/part.js:1349 templates/js/translated/part.js:2849 #: templates/js/translated/pricing.js:114 #: templates/js/translated/pricing.js:207 #: templates/js/translated/pricing.js:255 -#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:490 -#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:814 -#: templates/js/translated/stock.js:2674 templates/js/translated/stock.js:2759 +#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:489 +#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:813 +#: templates/js/translated/stock.js:2669 templates/js/translated/stock.js:2754 msgid "Quantity" msgstr "Hoeveelheid" @@ -1097,8 +1105,8 @@ msgid "Enter quantity for build output" msgstr "Voer hoeveelheid in voor productie uitvoer" #: build/serializers.py:207 build/serializers.py:683 order/models.py:327 -#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:645 -#: part/serializers.py:1016 stock/models.py:574 stock/models.py:1312 +#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:686 +#: part/serializers.py:1057 stock/models.py:574 stock/models.py:1312 #: stock/serializers.py:294 msgid "Quantity must be greater than zero" msgstr "Hoeveelheid moet groter zijn dan nul" @@ -1113,7 +1121,7 @@ msgstr "Geheel getal vereist omdat de stuklijst traceerbare onderdelen bevat" #: build/serializers.py:231 order/serializers.py:463 order/serializers.py:1210 #: stock/serializers.py:303 templates/js/translated/order.js:1545 -#: templates/js/translated/stock.js:303 templates/js/translated/stock.js:491 +#: templates/js/translated/stock.js:302 templates/js/translated/stock.js:490 msgid "Serial Numbers" msgstr "Serienummers" @@ -1146,9 +1154,10 @@ msgstr "Een lijst van productieuitvoeren moet worden verstrekt" #: templates/js/translated/build.js:1759 templates/js/translated/order.js:1572 #: templates/js/translated/order.js:3514 templates/js/translated/order.js:3619 #: templates/js/translated/order.js:3627 templates/js/translated/order.js:3708 -#: templates/js/translated/part.js:183 templates/js/translated/stock.js:620 -#: templates/js/translated/stock.js:785 templates/js/translated/stock.js:995 -#: templates/js/translated/stock.js:1895 templates/js/translated/stock.js:2566 +#: templates/js/translated/part.js:186 templates/js/translated/part.js:804 +#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 +#: templates/js/translated/stock.js:994 templates/js/translated/stock.js:1890 +#: templates/js/translated/stock.js:2561 msgid "Location" msgstr "Locatie" @@ -1162,8 +1171,8 @@ msgstr "Locatie van voltooide productieuitvoeren" #: stock/templates/stock/item_base.html:421 #: templates/js/translated/barcode.js:237 templates/js/translated/build.js:2630 #: templates/js/translated/order.js:1681 templates/js/translated/order.js:2034 -#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1870 -#: templates/js/translated/stock.js:2643 templates/js/translated/stock.js:2775 +#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:2638 templates/js/translated/stock.js:2770 msgid "Status" msgstr "Status" @@ -1239,8 +1248,8 @@ msgstr "Vereiste productiehoeveelheid is voltooid" msgid "Build order has incomplete outputs" msgstr "Productieorder heeft onvolledige uitvoeren" -#: build/serializers.py:595 build/serializers.py:640 part/models.py:3495 -#: part/models.py:3651 +#: build/serializers.py:595 build/serializers.py:640 part/models.py:3573 +#: part/models.py:3729 msgid "BOM Item" msgstr "Stuklijstartikel" @@ -1406,7 +1415,7 @@ msgstr "Voorraad is niet volledig toegewezen aan deze productieorder" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2670 templates/js/translated/order.js:2051 #: templates/js/translated/order.js:2382 templates/js/translated/order.js:2866 -#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1093 +#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1364 msgid "Target Date" msgstr "Streefdatum" @@ -1484,8 +1493,8 @@ msgstr "Toegewezen Onderdelen" #: stock/templates/stock/item_base.html:168 #: templates/js/translated/build.js:1250 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:1884 -#: templates/js/translated/stock.js:2782 +#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:1879 +#: templates/js/translated/stock.js:2777 #: templates/js/translated/table_filters.js:179 #: templates/js/translated/table_filters.js:270 msgid "Batch" @@ -1617,8 +1626,8 @@ msgstr "Voltooide Productieuitvoeren" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:86 #: order/templates/order/sales_order_detail.html:140 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:210 -#: part/templates/part/part_sidebar.html:55 stock/templates/stock/item.html:117 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:233 +#: part/templates/part/part_sidebar.html:60 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" msgstr "Bijlagen" @@ -1635,7 +1644,7 @@ msgstr "Toewijzing Voltooid" msgid "All untracked stock items have been allocated" msgstr "Alle niet gevolgde voorraadartikelen zijn toegewezen" -#: build/templates/build/index.html:18 part/templates/part/detail.html:316 +#: build/templates/build/index.html:18 part/templates/part/detail.html:339 msgid "New Build Order" msgstr "Nieuwe Productieorder" @@ -1928,9 +1937,9 @@ msgstr "Kopiëer Categorieparameter Sjablonen" msgid "Copy category parameter templates when creating a part" msgstr "Kopieer categorieparameter sjablonen bij het aanmaken van een onderdeel" -#: common/models.py:1014 part/admin.py:41 part/models.py:3168 +#: common/models.py:1014 part/admin.py:41 part/models.py:3246 #: report/models.py:158 templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:504 +#: templates/js/translated/table_filters.js:508 msgid "Template" msgstr "Sjabloon" @@ -1938,7 +1947,7 @@ msgstr "Sjabloon" msgid "Parts are templates by default" msgstr "Onderdelen zijn standaard sjablonen" -#: common/models.py:1021 part/admin.py:37 part/admin.py:229 part/models.py:957 +#: common/models.py:1021 part/admin.py:37 part/admin.py:262 part/models.py:958 #: templates/js/translated/bom.js:1595 #: templates/js/translated/table_filters.js:196 #: templates/js/translated/table_filters.js:467 @@ -1949,7 +1958,7 @@ msgstr "Samenstelling" msgid "Parts can be assembled from other components by default" msgstr "Onderdelen kunnen standaard vanuit andere componenten worden samengesteld" -#: common/models.py:1028 part/admin.py:38 part/models.py:963 +#: common/models.py:1028 part/admin.py:38 part/models.py:964 #: templates/js/translated/table_filters.js:475 msgid "Component" msgstr "Component" @@ -1958,7 +1967,7 @@ msgstr "Component" msgid "Parts can be used as sub-components by default" msgstr "Onderdelen kunnen standaard worden gebruikt als subcomponenten" -#: common/models.py:1035 part/admin.py:39 part/models.py:974 +#: common/models.py:1035 part/admin.py:39 part/models.py:975 msgid "Purchaseable" msgstr "Koopbaar" @@ -1966,7 +1975,7 @@ msgstr "Koopbaar" msgid "Parts are purchaseable by default" msgstr "Onderdelen kunnen standaard gekocht worden" -#: common/models.py:1042 part/admin.py:40 part/models.py:979 +#: common/models.py:1042 part/admin.py:40 part/models.py:980 #: templates/js/translated/table_filters.js:496 msgid "Salable" msgstr "Verkoopbaar" @@ -1975,10 +1984,10 @@ msgstr "Verkoopbaar" msgid "Parts are salable by default" msgstr "Onderdelen kunnen standaard verkocht worden" -#: common/models.py:1049 part/admin.py:42 part/models.py:969 +#: common/models.py:1049 part/admin.py:42 part/models.py:970 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:120 -#: templates/js/translated/table_filters.js:508 +#: templates/js/translated/table_filters.js:512 msgid "Trackable" msgstr "Volgbaar" @@ -1986,10 +1995,10 @@ msgstr "Volgbaar" msgid "Parts are trackable by default" msgstr "Onderdelen kunnen standaard gevolgd worden" -#: common/models.py:1056 part/admin.py:43 part/models.py:989 +#: common/models.py:1056 part/admin.py:43 part/models.py:990 #: part/templates/part/part_base.html:156 #: templates/js/translated/table_filters.js:42 -#: templates/js/translated/table_filters.js:512 +#: templates/js/translated/table_filters.js:516 msgid "Virtual" msgstr "Virtueel" @@ -2417,7 +2426,7 @@ msgstr "" msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1461 common/models.py:1803 +#: common/models.py:1461 common/models.py:1810 msgid "Settings key (must be unique - case insensitive" msgstr "Instellingssleutel (moet uniek zijn - hoofdletter ongevoelig" @@ -2749,41 +2758,50 @@ msgstr "" msgid "Display part scheduling information" msgstr "" -#: common/models.py:1778 -msgid "Table String Length" +#: common/models.py:1778 part/templates/part/detail.html:61 +#: templates/js/translated/part.js:822 +msgid "Part Stocktake" msgstr "" #: common/models.py:1779 +msgid "Display part stocktake information" +msgstr "" + +#: common/models.py:1785 +msgid "Table String Length" +msgstr "" + +#: common/models.py:1786 msgid "Maximimum length limit for strings displayed in table views" msgstr "" -#: common/models.py:1843 +#: common/models.py:1850 msgid "Price break quantity" msgstr "" -#: common/models.py:1850 company/serializers.py:393 order/models.py:975 -#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1145 +#: common/models.py:1857 company/serializers.py:393 order/models.py:975 +#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1416 #: templates/js/translated/pricing.js:354 msgid "Price" msgstr "Prijs" -#: common/models.py:1851 +#: common/models.py:1858 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2011 common/models.py:2189 +#: common/models.py:2018 common/models.py:2196 msgid "Endpoint" msgstr "" -#: common/models.py:2012 +#: common/models.py:2019 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2021 +#: common/models.py:2028 msgid "Name for this webhook" msgstr "" -#: common/models.py:2026 part/admin.py:36 part/models.py:984 +#: common/models.py:2033 part/admin.py:36 part/models.py:985 #: plugin/models.py:100 templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:116 #: templates/js/translated/table_filters.js:336 @@ -2791,131 +2809,133 @@ msgstr "" msgid "Active" msgstr "Actief" -#: common/models.py:2027 +#: common/models.py:2034 msgid "Is this webhook active" msgstr "" -#: common/models.py:2041 +#: common/models.py:2048 msgid "Token" msgstr "Token" -#: common/models.py:2042 +#: common/models.py:2049 msgid "Token for access" msgstr "Token voor toegang" -#: common/models.py:2049 +#: common/models.py:2056 msgid "Secret" msgstr "Geheim" -#: common/models.py:2050 +#: common/models.py:2057 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2156 +#: common/models.py:2163 msgid "Message ID" msgstr "Bericht ID" -#: common/models.py:2157 +#: common/models.py:2164 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2165 +#: common/models.py:2172 msgid "Host" msgstr "Host" -#: common/models.py:2166 +#: common/models.py:2173 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2173 +#: common/models.py:2180 msgid "Header" msgstr "Koptekst" -#: common/models.py:2174 +#: common/models.py:2181 msgid "Header of this message" msgstr "Koptekst van dit bericht" -#: common/models.py:2180 +#: common/models.py:2187 msgid "Body" msgstr "Berichtinhoud" -#: common/models.py:2181 +#: common/models.py:2188 msgid "Body of this message" msgstr "Inhoud van dit bericht" -#: common/models.py:2190 +#: common/models.py:2197 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2195 +#: common/models.py:2202 msgid "Worked on" msgstr "" -#: common/models.py:2196 +#: common/models.py:2203 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2355 +#: common/models.py:2362 msgid "Id" msgstr "" -#: common/models.py:2361 templates/js/translated/news.js:35 +#: common/models.py:2368 templates/js/translated/news.js:35 msgid "Title" msgstr "" -#: common/models.py:2371 templates/js/translated/news.js:51 +#: common/models.py:2378 templates/js/translated/news.js:51 msgid "Published" msgstr "" -#: common/models.py:2376 templates/InvenTree/settings/plugin.html:62 +#: common/models.py:2383 templates/InvenTree/settings/plugin.html:62 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/news.js:47 msgid "Author" msgstr "" -#: common/models.py:2381 templates/js/translated/news.js:43 +#: common/models.py:2388 templates/js/translated/news.js:43 msgid "Summary" msgstr "" -#: common/models.py:2386 +#: common/models.py:2393 msgid "Read" msgstr "" -#: common/models.py:2387 +#: common/models.py:2394 msgid "Was this news item read?" msgstr "" -#: common/notifications.py:293 +#: common/notifications.py:294 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:295 +#: common/notifications.py:296 msgid "A new order has been created and assigned to you" msgstr "Een nieuwe order is aangemaakt en aan u toegewezen" -#: common/notifications.py:301 +#: common/notifications.py:302 msgid "Items Received" msgstr "" -#: common/notifications.py:303 +#: common/notifications.py:304 msgid "Items have been received against a purchase order" msgstr "Artikelen zijn ontvangen tegen een inkooporder" -#: common/notifications.py:415 +#: common/notifications.py:416 msgid "Error raised by plugin" msgstr "" #: common/views.py:85 order/templates/order/order_wizard/po_upload.html:51 #: order/templates/order/purchase_order_detail.html:25 order/views.py:102 -#: part/views.py:107 templates/patterns/wizard/upload.html:37 +#: part/templates/part/import_wizard/part_upload.html:58 part/views.py:109 +#: templates/patterns/wizard/upload.html:37 msgid "Upload File" msgstr "Upload Bestand" #: common/views.py:86 order/templates/order/order_wizard/match_fields.html:52 #: order/views.py:103 #: part/templates/part/import_wizard/ajax_match_fields.html:45 -#: part/views.py:108 templates/patterns/wizard/match_fields.html:51 +#: part/templates/part/import_wizard/match_fields.html:52 part/views.py:110 +#: templates/patterns/wizard/match_fields.html:51 msgid "Match Fields" msgstr "Vergelijk Velden" @@ -2934,7 +2954,9 @@ msgstr "" #: common/views.py:509 order/templates/order/order_wizard/match_fields.html:27 #: order/templates/order/order_wizard/match_parts.html:19 #: order/templates/order/order_wizard/po_upload.html:49 +#: part/templates/part/import_wizard/match_fields.html:27 #: part/templates/part/import_wizard/match_references.html:19 +#: part/templates/part/import_wizard/part_upload.html:56 #: templates/patterns/wizard/match_fields.html:26 #: templates/patterns/wizard/upload.html:35 msgid "Previous Step" @@ -2995,7 +3017,7 @@ msgstr "Contactpunt" msgid "Link to external company information" msgstr "Link naar externe bedrijfsinformatie" -#: company/models.py:140 part/models.py:878 +#: company/models.py:140 part/models.py:879 msgid "Image" msgstr "Afbeelding" @@ -3028,8 +3050,8 @@ msgid "Does this company manufacture parts?" msgstr "Fabriceert dit bedrijf onderdelen?" #: company/models.py:153 company/serializers.py:399 -#: company/templates/company/company_base.html:107 part/models.py:2762 -#: part/serializers.py:154 part/serializers.py:182 stock/serializers.py:182 +#: company/templates/company/company_base.html:107 part/models.py:2780 +#: part/serializers.py:156 part/serializers.py:184 stock/serializers.py:182 #: templates/InvenTree/settings/pricing.html:64 msgid "Currency" msgstr "Valuta" @@ -3055,12 +3077,12 @@ msgstr "Onderdeel selecteren" #: templates/js/translated/company.js:433 #: templates/js/translated/company.js:534 #: templates/js/translated/company.js:669 -#: templates/js/translated/company.js:957 templates/js/translated/part.js:238 +#: templates/js/translated/company.js:957 templates/js/translated/part.js:241 #: templates/js/translated/table_filters.js:439 msgid "Manufacturer" msgstr "Fabrikant" -#: company/models.py:269 templates/js/translated/part.js:239 +#: company/models.py:269 templates/js/translated/part.js:242 msgid "Select manufacturer" msgstr "Fabrikant selecteren" @@ -3070,11 +3092,11 @@ msgstr "Fabrikant selecteren" #: templates/js/translated/company.js:533 #: templates/js/translated/company.js:685 #: templates/js/translated/company.js:976 templates/js/translated/order.js:2286 -#: templates/js/translated/part.js:249 templates/js/translated/part.js:1067 +#: templates/js/translated/part.js:252 templates/js/translated/part.js:1338 msgid "MPN" msgstr "MPN" -#: company/models.py:276 templates/js/translated/part.js:250 +#: company/models.py:276 templates/js/translated/part.js:253 msgid "Manufacturer Part Number" msgstr "Fabrikant artikel nummer (MPN)" @@ -3100,8 +3122,8 @@ msgstr "Parameternaam" #: company/models.py:370 #: report/templates/report/inventree_test_report_base.html:95 #: stock/models.py:2156 templates/js/translated/company.js:582 -#: templates/js/translated/company.js:800 templates/js/translated/part.js:889 -#: templates/js/translated/stock.js:1399 +#: templates/js/translated/company.js:800 templates/js/translated/part.js:1160 +#: templates/js/translated/stock.js:1398 msgid "Value" msgstr "Waarde" @@ -3109,10 +3131,10 @@ msgstr "Waarde" msgid "Parameter value" msgstr "Parameterwaarde" -#: company/models.py:377 part/admin.py:26 part/models.py:951 -#: part/models.py:3128 part/templates/part/part_base.html:286 -#: templates/InvenTree/settings/settings.html:349 -#: templates/js/translated/company.js:806 templates/js/translated/part.js:895 +#: company/models.py:377 part/admin.py:26 part/models.py:952 +#: part/models.py:3206 part/templates/part/part_base.html:286 +#: templates/InvenTree/settings/settings.html:350 +#: templates/js/translated/company.js:806 templates/js/translated/part.js:1166 msgid "Units" msgstr "Eenheden" @@ -3132,24 +3154,24 @@ msgstr "Gekoppeld fabrikant onderdeel moet verwijzen naar hetzelfde basis onderd #: templates/js/translated/company.js:304 #: templates/js/translated/company.js:437 #: templates/js/translated/company.js:930 templates/js/translated/order.js:2017 -#: templates/js/translated/part.js:219 templates/js/translated/part.js:1035 +#: templates/js/translated/part.js:222 templates/js/translated/part.js:1306 #: templates/js/translated/pricing.js:231 #: templates/js/translated/table_filters.js:443 msgid "Supplier" msgstr "Leverancier" -#: company/models.py:498 templates/js/translated/part.js:220 +#: company/models.py:498 templates/js/translated/part.js:223 msgid "Select supplier" msgstr "Leverancier selecteren" #: company/models.py:503 company/templates/company/supplier_part.html:146 #: part/bom.py:253 part/bom.py:281 templates/js/translated/company.js:303 -#: templates/js/translated/order.js:2273 templates/js/translated/part.js:230 -#: templates/js/translated/part.js:1053 templates/js/translated/pricing.js:243 +#: templates/js/translated/order.js:2273 templates/js/translated/part.js:233 +#: templates/js/translated/part.js:1324 templates/js/translated/pricing.js:243 msgid "SKU" msgstr "SKU" -#: company/models.py:504 templates/js/translated/part.js:231 +#: company/models.py:504 templates/js/translated/part.js:234 msgid "Supplier stock keeping unit" msgstr "" @@ -3166,24 +3188,25 @@ msgid "Supplier part description" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:181 -#: part/admin.py:225 part/models.py:3381 part/templates/part/upload_bom.html:59 +#: part/admin.py:258 part/models.py:3459 part/templates/part/upload_bom.html:59 +#: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:397 msgid "Note" msgstr "Opmerking" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "base cost" msgstr "basisprijs" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "Minimum charge (e.g. stocking fee)" msgstr "Minimale kosten (bijv. voorraadkosten)" #: company/models.py:534 company/templates/company/supplier_part.html:167 #: stock/admin.py:101 stock/models.py:682 #: stock/templates/stock/item_base.html:243 -#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2016 +#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2011 msgid "Packaging" msgstr "" @@ -3196,7 +3219,7 @@ msgstr "" #: templates/js/translated/company.js:997 templates/js/translated/order.js:826 #: templates/js/translated/order.js:1253 templates/js/translated/order.js:1508 #: templates/js/translated/order.js:2317 templates/js/translated/order.js:2334 -#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1137 +#: templates/js/translated/part.js:1356 templates/js/translated/part.js:1408 msgid "Pack Quantity" msgstr "" @@ -3204,7 +3227,7 @@ msgstr "" msgid "Unit quantity supplied in a single pack" msgstr "" -#: company/models.py:544 part/models.py:1863 +#: company/models.py:544 part/models.py:1869 msgid "multiple" msgstr "meerdere" @@ -3216,8 +3239,8 @@ msgstr "Order meerdere" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:1118 templates/js/translated/build.js:1883 -#: templates/js/translated/build.js:2770 templates/js/translated/part.js:623 -#: templates/js/translated/part.js:626 +#: templates/js/translated/build.js:2770 templates/js/translated/part.js:626 +#: templates/js/translated/part.js:629 #: templates/js/translated/table_filters.js:206 msgid "Available" msgstr "Beschikbaar" @@ -3300,7 +3323,7 @@ msgstr "" #: stock/templates/stock/item_base.html:399 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:429 templates/js/translated/order.js:2827 -#: templates/js/translated/stock.js:2607 +#: templates/js/translated/stock.js:2602 #: templates/js/translated/table_filters.js:447 msgid "Customer" msgstr "Klant" @@ -3314,7 +3337,7 @@ msgid "Phone" msgstr "Telefoon" #: company/templates/company/company_base.html:206 -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:525 msgid "Remove Image" msgstr "" @@ -3323,19 +3346,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:209 -#: part/templates/part/part_base.html:514 +#: part/templates/part/part_base.html:528 #: templates/InvenTree/settings/user.html:87 #: templates/InvenTree/settings/user.html:149 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:238 -#: part/templates/part/part_base.html:543 +#: part/templates/part/part_base.html:557 msgid "Upload Image" msgstr "Afbeelding Uploaden" #: company/templates/company/company_base.html:253 -#: part/templates/part/part_base.html:598 +#: part/templates/part/part_base.html:612 msgid "Download Image" msgstr "Afbeelding Downloaden" @@ -3351,7 +3374,7 @@ msgstr "" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:357 +#: part/templates/part/detail.html:380 msgid "New Supplier Part" msgstr "" @@ -3380,7 +3403,7 @@ msgstr "Fabrikant onderdelen" msgid "Create new manufacturer part" msgstr "Maak nieuw fabrikant onderdeel" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:387 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:410 msgid "New Manufacturer Part" msgstr "Nieuw fabrikant onderdeel" @@ -3394,9 +3417,9 @@ msgstr "" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:35 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:35 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:200 -#: templates/InvenTree/settings/sidebar.html:49 +#: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:293 templates/navbar.html:50 #: users/models.py:42 msgid "Purchase Orders" @@ -3417,9 +3440,9 @@ msgstr "Nieuwe Inkooporder" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:39 +#: part/templates/part/detail.html:130 part/templates/part/part_sidebar.html:39 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:220 -#: templates/InvenTree/settings/sidebar.html:51 +#: templates/InvenTree/settings/sidebar.html:53 #: templates/js/translated/search.js:317 templates/navbar.html:61 #: users/models.py:43 msgid "Sales Orders" @@ -3451,7 +3474,7 @@ msgstr "Fabrikanten" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:221 -#: part/templates/part/detail.html:87 part/templates/part/part_base.html:85 +#: part/templates/part/detail.html:110 part/templates/part/part_base.html:85 msgid "Order part" msgstr "Order onderdeel" @@ -3482,28 +3505,28 @@ msgid "Suppliers" msgstr "Leveranciers" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:368 +#: part/templates/part/detail.html:391 msgid "Delete supplier parts" msgstr "Verwijder leveranciersonderdelen" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:369 part/templates/part/detail.html:399 -#: templates/js/translated/forms.js:455 templates/js/translated/helpers.js:38 -#: templates/js/translated/part.js:351 templates/js/translated/stock.js:188 -#: users/models.py:224 +#: part/templates/part/detail.html:392 part/templates/part/detail.html:422 +#: templates/js/translated/forms.js:458 templates/js/translated/helpers.js:38 +#: templates/js/translated/part.js:354 templates/js/translated/stock.js:187 +#: users/models.py:225 msgid "Delete" msgstr "Verwijderen" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:184 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:207 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "Parameters" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:189 +#: part/templates/part/detail.html:212 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:62 msgid "New Parameter" @@ -3514,7 +3537,7 @@ msgid "Delete parameters" msgstr "Parameter verwijderen" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:825 +#: part/templates/part/detail.html:865 msgid "Add Parameter" msgstr "Parameter toevoegen" @@ -3538,7 +3561,7 @@ msgstr "Toegewezen Voorraadartikelen" #: company/templates/company/supplier_part.html:24 stock/models.py:665 #: stock/templates/stock/item_base.html:236 #: templates/js/translated/company.js:946 templates/js/translated/order.js:1173 -#: templates/js/translated/stock.js:1974 +#: templates/js/translated/stock.js:1969 msgid "Supplier Part" msgstr "Leveranciersonderdeel" @@ -3578,7 +3601,7 @@ msgstr "" #: company/templates/company/supplier_part.html:56 #: company/templates/company/supplier_part.html:57 #: company/templates/company/supplier_part.html:222 -#: part/templates/part/detail.html:88 +#: part/templates/part/detail.html:111 msgid "Order Part" msgstr "Order Onderdeel" @@ -3630,7 +3653,7 @@ msgstr "Nieuw voorraadartikel aanmaken" #: company/templates/company/supplier_part.html:204 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:198 -#: templates/js/translated/stock.js:467 +#: templates/js/translated/stock.js:466 msgid "New Stock Item" msgstr "Nieuw Voorraadartikel" @@ -3662,10 +3685,10 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 -#: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/part.js:777 templates/js/translated/part.js:1378 -#: templates/js/translated/part.js:1534 templates/js/translated/stock.js:994 -#: templates/js/translated/stock.js:1799 templates/navbar.html:31 +#: templates/InvenTree/settings/sidebar.html:47 +#: templates/js/translated/part.js:1048 templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1805 templates/js/translated/stock.js:993 +#: templates/js/translated/stock.js:1794 templates/navbar.html:31 msgid "Stock" msgstr "Voorraad" @@ -3680,7 +3703,7 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:29 #: part/templates/part/part_sidebar.html:30 -#: templates/InvenTree/settings/sidebar.html:35 +#: templates/InvenTree/settings/sidebar.html:37 msgid "Pricing" msgstr "Prijzen" @@ -3692,7 +3715,7 @@ msgstr "Prijzen" #: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:155 templates/js/translated/search.js:225 -#: templates/js/translated/stock.js:2484 users/models.py:40 +#: templates/js/translated/stock.js:2479 users/models.py:40 msgid "Stock Items" msgstr "Voorraadartikelen" @@ -3801,9 +3824,9 @@ msgstr "" #: stock/templates/stock/item_base.html:182 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:619 templates/js/translated/order.js:1174 -#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1012 -#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1954 -#: templates/js/translated/stock.js:2588 +#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1283 +#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1949 +#: templates/js/translated/stock.js:2583 msgid "Purchase Order" msgstr "Inkooporder" @@ -3973,7 +3996,7 @@ msgstr "Leveranciersonderdeel" #: order/models.py:1046 order/templates/order/order_base.html:178 #: templates/js/translated/order.js:1679 templates/js/translated/order.js:2404 -#: templates/js/translated/part.js:1129 templates/js/translated/part.js:1161 +#: templates/js/translated/part.js:1400 templates/js/translated/part.js:1432 #: templates/js/translated/table_filters.js:358 msgid "Received" msgstr "Ontvangen" @@ -3984,7 +4007,7 @@ msgstr "Aantal ontvangen artikelen" #: order/models.py:1054 stock/models.py:800 stock/serializers.py:173 #: stock/templates/stock/item_base.html:189 -#: templates/js/translated/stock.js:2005 +#: templates/js/translated/stock.js:2000 msgid "Purchase Price" msgstr "Inkoopprijs" @@ -4350,18 +4373,21 @@ msgstr "Totale kosten konden niet worden berekend" #: order/templates/order/order_wizard/match_fields.html:9 #: part/templates/part/import_wizard/ajax_match_fields.html:9 +#: part/templates/part/import_wizard/match_fields.html:9 #: templates/patterns/wizard/match_fields.html:8 msgid "Missing selections for the following required columns" msgstr "" #: order/templates/order/order_wizard/match_fields.html:20 #: part/templates/part/import_wizard/ajax_match_fields.html:20 +#: part/templates/part/import_wizard/match_fields.html:20 #: templates/patterns/wizard/match_fields.html:19 msgid "Duplicate selections found, see below. Fix them then retry submitting." msgstr "" #: order/templates/order/order_wizard/match_fields.html:29 #: order/templates/order/order_wizard/match_parts.html:21 +#: part/templates/part/import_wizard/match_fields.html:29 #: part/templates/part/import_wizard/match_references.html:21 #: templates/patterns/wizard/match_fields.html:28 msgid "Submit Selections" @@ -4369,18 +4395,21 @@ msgstr "Dien Selecties In" #: order/templates/order/order_wizard/match_fields.html:35 #: part/templates/part/import_wizard/ajax_match_fields.html:28 +#: part/templates/part/import_wizard/match_fields.html:35 #: templates/patterns/wizard/match_fields.html:34 msgid "File Fields" msgstr "" #: order/templates/order/order_wizard/match_fields.html:42 #: part/templates/part/import_wizard/ajax_match_fields.html:35 +#: part/templates/part/import_wizard/match_fields.html:42 #: templates/patterns/wizard/match_fields.html:41 msgid "Remove column" msgstr "" #: order/templates/order/order_wizard/match_fields.html:60 #: part/templates/part/import_wizard/ajax_match_fields.html:53 +#: part/templates/part/import_wizard/match_fields.html:60 #: templates/patterns/wizard/match_fields.html:59 msgid "Duplicate selection" msgstr "" @@ -4389,12 +4418,13 @@ msgstr "" #: order/templates/order/order_wizard/match_parts.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: 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:102 templates/js/translated/build.js:485 #: templates/js/translated/build.js:641 templates/js/translated/build.js:2088 #: templates/js/translated/order.js:1122 templates/js/translated/order.js:1624 -#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:657 -#: templates/js/translated/stock.js:825 +#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:824 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "Rij verwijderen" @@ -4429,6 +4459,7 @@ msgstr "Order is al verwerkt. Bestanden kunnen niet meer worden geüpload." #: order/templates/order/order_wizard/po_upload.html:27 #: part/templates/part/import_wizard/ajax_part_upload.html:10 +#: part/templates/part/import_wizard/part_upload.html:26 #: templates/patterns/wizard/upload.html:13 #, python-format msgid "Step %(step)s of %(count)s" @@ -4567,12 +4598,12 @@ 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:19 part/admin.py:219 part/models.py:3262 stock/admin.py:84 +#: part/admin.py:19 part/admin.py:252 part/models.py:3340 stock/admin.py:84 #: templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/admin.py:20 part/admin.py:221 part/models.py:3266 stock/admin.py:85 +#: part/admin.py:20 part/admin.py:254 part/models.py:3344 stock/admin.py:85 msgid "Part Name" msgstr "" @@ -4580,32 +4611,32 @@ msgstr "" msgid "Part Description" msgstr "" -#: part/admin.py:22 part/models.py:852 part/templates/part/part_base.html:272 -#: templates/js/translated/part.js:763 templates/js/translated/part.js:1491 -#: templates/js/translated/stock.js:1765 +#: part/admin.py:22 part/models.py:853 part/templates/part/part_base.html:272 +#: templates/js/translated/part.js:1034 templates/js/translated/part.js:1762 +#: templates/js/translated/stock.js:1760 msgid "IPN" msgstr "" -#: part/admin.py:23 part/models.py:860 part/templates/part/part_base.html:279 -#: report/models.py:171 templates/js/translated/part.js:768 +#: part/admin.py:23 part/models.py:861 part/templates/part/part_base.html:279 +#: report/models.py:171 templates/js/translated/part.js:1039 msgid "Revision" msgstr "" -#: part/admin.py:24 part/admin.py:145 part/models.py:838 +#: part/admin.py:24 part/admin.py:178 part/models.py:839 #: part/templates/part/category.html:87 part/templates/part/part_base.html:300 msgid "Keywords" msgstr "" -#: part/admin.py:28 part/admin.py:139 +#: part/admin.py:28 part/admin.py:172 #: templates/js/translated/model_renderers.js:338 msgid "Category ID" msgstr "" -#: part/admin.py:29 part/admin.py:140 +#: part/admin.py:29 part/admin.py:173 msgid "Category Name" msgstr "" -#: part/admin.py:30 part/admin.py:144 +#: part/admin.py:30 part/admin.py:177 msgid "Default Location ID" msgstr "" @@ -4613,7 +4644,7 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:33 part/models.py:944 part/templates/part/part_base.html:206 +#: part/admin.py:33 part/models.py:945 part/templates/part/part_base.html:206 msgid "Minimum Stock" msgstr "" @@ -4625,8 +4656,8 @@ msgstr "" #: part/admin.py:48 part/bom.py:145 part/templates/part/part_base.html:213 #: templates/js/translated/bom.js:1156 templates/js/translated/build.js:1935 -#: templates/js/translated/part.js:613 templates/js/translated/part.js:633 -#: templates/js/translated/part.js:1381 templates/js/translated/part.js:1559 +#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 +#: templates/js/translated/part.js:1652 templates/js/translated/part.js:1830 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "In bestelling" @@ -4642,115 +4673,115 @@ msgid "Allocated" msgstr "Toegewezen" #: part/admin.py:51 part/templates/part/part_base.html:244 -#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 -#: templates/js/translated/part.js:1385 templates/js/translated/part.js:1566 +#: templates/js/translated/part.js:619 templates/js/translated/part.js:639 +#: templates/js/translated/part.js:1656 templates/js/translated/part.js:1837 msgid "Building" msgstr "" -#: part/admin.py:52 part/models.py:2846 +#: part/admin.py:52 part/models.py:2864 msgid "Minimum Cost" msgstr "" -#: part/admin.py:53 part/models.py:2852 +#: part/admin.py:53 part/models.py:2870 msgid "Maximum Cost" msgstr "" -#: part/admin.py:142 part/admin.py:216 stock/admin.py:26 stock/admin.py:98 +#: part/admin.py:175 part/admin.py:249 stock/admin.py:26 stock/admin.py:98 msgid "Parent ID" msgstr "" -#: part/admin.py:143 part/admin.py:218 stock/admin.py:27 +#: part/admin.py:176 part/admin.py:251 stock/admin.py:27 msgid "Parent Name" msgstr "" -#: part/admin.py:146 part/templates/part/category.html:81 +#: part/admin.py:179 part/templates/part/category.html:81 #: part/templates/part/category.html:94 msgid "Category Path" msgstr "" -#: part/admin.py:149 part/models.py:382 part/templates/part/cat_link.html:3 +#: part/admin.py:182 part/models.py:383 part/templates/part/cat_link.html:3 #: part/templates/part/category.html:23 part/templates/part/category.html:134 #: part/templates/part/category.html:154 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:84 -#: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:2065 templates/js/translated/search.js:146 +#: templates/InvenTree/settings/sidebar.html:43 +#: templates/js/translated/part.js:2346 templates/js/translated/search.js:146 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" -#: part/admin.py:211 +#: part/admin.py:244 msgid "BOM Level" msgstr "" -#: part/admin.py:213 +#: part/admin.py:246 msgid "BOM Item ID" msgstr "" -#: part/admin.py:217 +#: part/admin.py:250 msgid "Parent IPN" msgstr "" -#: part/admin.py:220 part/models.py:3270 +#: part/admin.py:253 part/models.py:3348 msgid "Part IPN" msgstr "" -#: part/admin.py:226 templates/js/translated/pricing.js:91 +#: part/admin.py:259 templates/js/translated/pricing.js:91 #: templates/js/translated/pricing.js:732 msgid "Minimum Price" msgstr "" -#: part/admin.py:227 templates/js/translated/pricing.js:86 +#: part/admin.py:260 templates/js/translated/pricing.js:86 #: templates/js/translated/pricing.js:740 msgid "Maximum Price" msgstr "" -#: part/api.py:536 +#: part/api.py:538 msgid "Incoming Purchase Order" msgstr "Binnenkomende Inkooporder" -#: part/api.py:556 +#: part/api.py:558 msgid "Outgoing Sales Order" msgstr "Uitgaande Verkooporder" -#: part/api.py:574 +#: part/api.py:576 msgid "Stock produced by Build Order" msgstr "Geproduceerde voorraad door Productieorder" -#: part/api.py:660 +#: part/api.py:662 msgid "Stock required for Build Order" msgstr "Voorraad vereist voor Productieorder" -#: part/api.py:818 +#: part/api.py:820 msgid "Valid" msgstr "" -#: part/api.py:819 +#: part/api.py:821 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:825 +#: part/api.py:827 msgid "This option must be selected" msgstr "" -#: part/api.py:1265 +#: part/api.py:1281 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1269 +#: part/api.py:1285 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1284 +#: part/api.py:1300 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1315 part/api.py:1319 part/api.py:1334 part/api.py:1338 +#: part/api.py:1331 part/api.py:1335 part/api.py:1350 part/api.py:1354 msgid "This field is required" msgstr "" -#: part/bom.py:142 part/models.py:116 part/models.py:887 -#: part/templates/part/category.html:109 part/templates/part/part_base.html:360 +#: part/bom.py:142 part/models.py:116 part/models.py:888 +#: part/templates/part/category.html:109 part/templates/part/part_base.html:374 msgid "Default Location" msgstr "Standaard locatie" @@ -4801,7 +4832,7 @@ msgstr "" msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:159 part/models.py:3211 part/templates/part/category.html:16 +#: part/models.py:159 part/models.py:3289 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -4812,423 +4843,459 @@ msgstr "" msgid "Part Categories" msgstr "" -#: part/models.py:468 +#: part/models.py:469 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:538 part/models.py:550 +#: part/models.py:539 part/models.py:551 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:640 +#: part/models.py:641 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:771 +#: part/models.py:772 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:776 +#: part/models.py:777 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:790 +#: part/models.py:791 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:808 part/models.py:3267 +#: part/models.py:809 part/models.py:3345 msgid "Part name" msgstr "" -#: part/models.py:815 +#: part/models.py:816 msgid "Is Template" msgstr "" -#: part/models.py:816 +#: part/models.py:817 msgid "Is this part a template part?" msgstr "" -#: part/models.py:826 +#: part/models.py:827 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:827 +#: part/models.py:828 msgid "Variant Of" msgstr "" -#: part/models.py:833 +#: part/models.py:834 msgid "Part description" msgstr "" -#: part/models.py:839 +#: part/models.py:840 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:846 part/models.py:2966 part/models.py:3210 +#: part/models.py:847 part/models.py:3044 part/models.py:3288 #: part/templates/part/part_base.html:263 -#: templates/InvenTree/settings/settings.html:229 +#: templates/InvenTree/settings/settings.html:230 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1513 templates/js/translated/part.js:1770 +#: templates/js/translated/part.js:1784 templates/js/translated/part.js:2051 msgid "Category" msgstr "" -#: part/models.py:847 +#: part/models.py:848 msgid "Part category" msgstr "" -#: part/models.py:853 +#: part/models.py:854 msgid "Internal Part Number" msgstr "" -#: part/models.py:859 +#: part/models.py:860 msgid "Part revision or version number" msgstr "" -#: part/models.py:885 +#: part/models.py:886 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:930 part/templates/part/part_base.html:369 +#: part/models.py:931 part/templates/part/part_base.html:383 msgid "Default Supplier" msgstr "" -#: part/models.py:931 +#: part/models.py:932 msgid "Default supplier part" msgstr "" -#: part/models.py:938 +#: part/models.py:939 msgid "Default Expiry" msgstr "" -#: part/models.py:939 +#: part/models.py:940 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:945 +#: part/models.py:946 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:952 +#: part/models.py:953 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:958 +#: part/models.py:959 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:964 +#: part/models.py:965 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:970 +#: part/models.py:971 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:975 +#: part/models.py:976 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:980 +#: part/models.py:981 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:985 +#: part/models.py:986 msgid "Is this part active?" msgstr "" -#: part/models.py:990 +#: part/models.py:991 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:992 +#: part/models.py:993 msgid "Part notes" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "BOM checksum" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:997 +#: part/models.py:998 msgid "BOM checked by" msgstr "" -#: part/models.py:999 +#: part/models.py:1000 msgid "BOM checked date" msgstr "" -#: part/models.py:1003 +#: part/models.py:1004 msgid "Creation User" msgstr "" -#: part/models.py:1863 +#: part/models.py:1010 part/templates/part/part_base.html:345 +#: stock/templates/stock/item_base.html:445 +#: templates/js/translated/part.js:1901 +msgid "Last Stocktake" +msgstr "" + +#: part/models.py:1869 msgid "Sell multiple" msgstr "" -#: part/models.py:2763 +#: part/models.py:2781 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:2768 +#: part/models.py:2786 templates/js/translated/part.js:806 msgid "Updated" msgstr "" -#: part/models.py:2769 +#: part/models.py:2787 msgid "Timestamp of last pricing update" msgstr "" -#: part/models.py:2786 +#: part/models.py:2804 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:2787 +#: part/models.py:2805 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:2792 +#: part/models.py:2810 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:2793 +#: part/models.py:2811 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:2798 +#: part/models.py:2816 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:2799 +#: part/models.py:2817 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:2804 +#: part/models.py:2822 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:2805 +#: part/models.py:2823 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:2810 +#: part/models.py:2828 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:2811 +#: part/models.py:2829 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:2816 +#: part/models.py:2834 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:2817 +#: part/models.py:2835 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:2822 +#: part/models.py:2840 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:2823 +#: part/models.py:2841 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:2828 +#: part/models.py:2846 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:2829 +#: part/models.py:2847 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:2834 +#: part/models.py:2852 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:2835 +#: part/models.py:2853 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:2840 +#: part/models.py:2858 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:2841 +#: part/models.py:2859 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:2847 +#: part/models.py:2865 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:2853 +#: part/models.py:2871 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:2858 +#: part/models.py:2876 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:2859 +#: part/models.py:2877 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:2864 +#: part/models.py:2882 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:2865 +#: part/models.py:2883 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:2870 +#: part/models.py:2888 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:2871 +#: part/models.py:2889 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:2876 +#: part/models.py:2894 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:2877 +#: part/models.py:2895 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3013 +#: part/models.py:2913 +msgid "Part for stocktake" +msgstr "" + +#: part/models.py:2920 +msgid "Total available stock at time of stocktake" +msgstr "" + +#: part/models.py:2924 part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:63 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:2043 templates/js/translated/part.js:887 +#: templates/js/translated/pricing.js:537 +#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2511 +msgid "Date" +msgstr "Datum" + +#: part/models.py:2925 +msgid "Date stocktake was performed" +msgstr "" + +#: part/models.py:2933 +msgid "Additional notes" +msgstr "" + +#: part/models.py:2941 +msgid "User who performed this stocktake" +msgstr "" + +#: part/models.py:3091 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3030 +#: part/models.py:3108 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:3050 templates/js/translated/part.js:2116 -#: templates/js/translated/stock.js:1379 +#: part/models.py:3128 templates/js/translated/part.js:2397 +#: templates/js/translated/stock.js:1378 msgid "Test Name" msgstr "" -#: part/models.py:3051 +#: part/models.py:3129 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3056 +#: part/models.py:3134 msgid "Test Description" msgstr "" -#: part/models.py:3057 +#: part/models.py:3135 msgid "Enter description for this test" msgstr "" -#: part/models.py:3062 templates/js/translated/part.js:2125 +#: part/models.py:3140 templates/js/translated/part.js:2406 #: templates/js/translated/table_filters.js:322 msgid "Required" msgstr "" -#: part/models.py:3063 +#: part/models.py:3141 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3068 templates/js/translated/part.js:2133 +#: part/models.py:3146 templates/js/translated/part.js:2414 msgid "Requires Value" msgstr "" -#: part/models.py:3069 +#: part/models.py:3147 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3074 templates/js/translated/part.js:2140 +#: part/models.py:3152 templates/js/translated/part.js:2421 msgid "Requires Attachment" msgstr "" -#: part/models.py:3075 +#: part/models.py:3153 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3116 +#: part/models.py:3194 msgid "Parameter template name must be unique" msgstr "De template van de parameter moet uniek zijn" -#: part/models.py:3124 +#: part/models.py:3202 msgid "Parameter Name" msgstr "Parameternaam" -#: part/models.py:3128 +#: part/models.py:3206 msgid "Parameter Units" msgstr "Parameter Eenheden" -#: part/models.py:3133 +#: part/models.py:3211 msgid "Parameter description" msgstr "" -#: part/models.py:3166 +#: part/models.py:3244 msgid "Parent Part" msgstr "" -#: part/models.py:3168 part/models.py:3216 part/models.py:3217 -#: templates/InvenTree/settings/settings.html:224 +#: part/models.py:3246 part/models.py:3294 part/models.py:3295 +#: templates/InvenTree/settings/settings.html:225 msgid "Parameter Template" msgstr "Parameter Template" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Data" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Parameter Value" msgstr "Parameterwaarde" -#: part/models.py:3221 templates/InvenTree/settings/settings.html:233 +#: part/models.py:3299 templates/InvenTree/settings/settings.html:234 msgid "Default Value" msgstr "" -#: part/models.py:3222 +#: part/models.py:3300 msgid "Default Parameter Value" msgstr "Standaard Parameter Waarde" -#: part/models.py:3259 +#: part/models.py:3337 msgid "Part ID or part name" msgstr "" -#: part/models.py:3263 +#: part/models.py:3341 msgid "Unique part ID value" msgstr "" -#: part/models.py:3271 +#: part/models.py:3349 msgid "Part IPN value" msgstr "" -#: part/models.py:3274 +#: part/models.py:3352 msgid "Level" msgstr "" -#: part/models.py:3275 +#: part/models.py:3353 msgid "BOM level" msgstr "" -#: part/models.py:3344 +#: part/models.py:3422 msgid "Select parent part" msgstr "" -#: part/models.py:3352 +#: part/models.py:3430 msgid "Sub part" msgstr "" -#: part/models.py:3353 +#: part/models.py:3431 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:3359 +#: part/models.py:3437 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:3363 part/templates/part/upload_bom.html:58 +#: part/models.py:3441 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:933 templates/js/translated/bom.js:986 #: templates/js/translated/build.js:1868 #: templates/js/translated/table_filters.js:84 @@ -5236,189 +5303,189 @@ msgstr "" msgid "Optional" msgstr "" -#: part/models.py:3364 +#: part/models.py:3442 msgid "This BOM item is optional" msgstr "" -#: part/models.py:3369 templates/js/translated/bom.js:929 +#: part/models.py:3447 templates/js/translated/bom.js:929 #: templates/js/translated/bom.js:995 templates/js/translated/build.js:1859 #: templates/js/translated/table_filters.js:88 msgid "Consumable" msgstr "" -#: part/models.py:3370 +#: part/models.py:3448 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:3374 part/templates/part/upload_bom.html:55 +#: part/models.py:3452 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:3375 +#: part/models.py:3453 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:3378 +#: part/models.py:3456 msgid "BOM item reference" msgstr "" -#: part/models.py:3381 +#: part/models.py:3459 msgid "BOM item notes" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "Checksum" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "BOM line checksum" msgstr "" -#: part/models.py:3387 part/templates/part/upload_bom.html:57 +#: part/models.py:3465 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1012 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:108 msgid "Inherited" msgstr "" -#: part/models.py:3388 +#: part/models.py:3466 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:3393 part/templates/part/upload_bom.html:56 +#: part/models.py:3471 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1004 msgid "Allow Variants" msgstr "" -#: part/models.py:3394 +#: part/models.py:3472 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:3480 stock/models.py:558 +#: part/models.py:3558 stock/models.py:558 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:3489 part/models.py:3491 +#: part/models.py:3567 part/models.py:3569 msgid "Sub part must be specified" msgstr "" -#: part/models.py:3618 +#: part/models.py:3696 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:3639 +#: part/models.py:3717 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:3652 +#: part/models.py:3730 msgid "Parent BOM item" msgstr "" -#: part/models.py:3660 +#: part/models.py:3738 msgid "Substitute part" msgstr "" -#: part/models.py:3675 +#: part/models.py:3753 msgid "Part 1" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Part 2" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Select Related Part" msgstr "" -#: part/models.py:3697 +#: part/models.py:3775 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:3701 +#: part/models.py:3779 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:155 part/serializers.py:183 stock/serializers.py:183 +#: part/serializers.py:157 part/serializers.py:185 stock/serializers.py:183 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:543 +#: part/serializers.py:584 msgid "Update" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:585 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:854 +#: part/serializers.py:895 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:862 +#: part/serializers.py:903 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:863 +#: part/serializers.py:904 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:868 +#: part/serializers.py:909 msgid "Include Inherited" msgstr "" -#: part/serializers.py:869 +#: part/serializers.py:910 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:874 +#: part/serializers.py:915 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:875 +#: part/serializers.py:916 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:921 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:881 +#: part/serializers.py:922 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:962 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:922 +#: part/serializers.py:963 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:952 +#: part/serializers.py:993 msgid "No part column specified" msgstr "" -#: part/serializers.py:995 +#: part/serializers.py:1036 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:998 +#: part/serializers.py:1039 msgid "No matching part found" msgstr "" -#: part/serializers.py:1001 +#: part/serializers.py:1042 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1010 +#: part/serializers.py:1051 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1059 msgid "Invalid quantity" msgstr "Ongeldige hoeveelheid" -#: part/serializers.py:1039 +#: part/serializers.py:1080 msgid "At least one BOM item is required" msgstr "" @@ -5450,7 +5517,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:267 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:290 msgid "BOM actions" msgstr "" @@ -5507,8 +5574,8 @@ msgstr "" msgid "New Part" msgstr "" -#: part/templates/part/category.html:169 part/templates/part/detail.html:366 -#: part/templates/part/detail.html:397 +#: part/templates/part/category.html:169 part/templates/part/detail.html:389 +#: part/templates/part/detail.html:420 msgid "Options" msgstr "" @@ -5556,7 +5623,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:404 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:407 msgid "Duplicate Part" msgstr "" @@ -5593,118 +5660,128 @@ msgstr "" msgid "Refresh" msgstr "" -#: part/templates/part/detail.html:59 +#: part/templates/part/detail.html:65 +msgid "Add stocktake information" +msgstr "" + +#: part/templates/part/detail.html:66 part/templates/part/part_sidebar.html:49 +#: stock/admin.py:107 templates/js/translated/stock.js:1905 +msgid "Stocktake" +msgstr "" + +#: part/templates/part/detail.html:82 msgid "Part Test Templates" msgstr "" -#: part/templates/part/detail.html:64 +#: part/templates/part/detail.html:87 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:144 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "Verkoopordertoewijzingen" -#: part/templates/part/detail.html:141 +#: part/templates/part/detail.html:164 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:156 +#: part/templates/part/detail.html:179 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:160 +#: part/templates/part/detail.html:183 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:161 +#: part/templates/part/detail.html:184 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:188 +#: part/templates/part/detail.html:211 msgid "Add new parameter" msgstr "Een parameter toevoegen" -#: part/templates/part/detail.html:225 part/templates/part/part_sidebar.html:52 +#: part/templates/part/detail.html:248 part/templates/part/part_sidebar.html:57 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:229 part/templates/part/detail.html:230 +#: part/templates/part/detail.html:252 part/templates/part/detail.html:253 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:250 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:273 part/templates/part/part_sidebar.html:17 +#: report/templates/report/inventree_bill_of_materials_report.html:100 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:255 +#: part/templates/part/detail.html:278 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:259 templates/js/translated/bom.js:309 +#: part/templates/part/detail.html:282 templates/js/translated/bom.js:309 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:261 +#: part/templates/part/detail.html:284 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:271 +#: part/templates/part/detail.html:294 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:272 templates/js/translated/part.js:276 +#: part/templates/part/detail.html:295 templates/js/translated/part.js:279 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:273 +#: part/templates/part/detail.html:296 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:278 part/templates/part/detail.html:279 +#: part/templates/part/detail.html:301 part/templates/part/detail.html:302 #: templates/js/translated/bom.js:1268 templates/js/translated/bom.js:1269 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:292 +#: part/templates/part/detail.html:315 msgid "Assemblies" msgstr "Assemblages" -#: part/templates/part/detail.html:310 +#: part/templates/part/detail.html:333 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:337 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:360 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "Productieordertoewijzingen" -#: part/templates/part/detail.html:353 +#: part/templates/part/detail.html:376 msgid "Part Suppliers" msgstr "" -#: part/templates/part/detail.html:383 +#: part/templates/part/detail.html:406 msgid "Part Manufacturers" msgstr "Onderdeelfabrikanten" -#: part/templates/part/detail.html:399 +#: part/templates/part/detail.html:422 msgid "Delete manufacturer parts" msgstr "Fabrikantonderdeel verwijderen" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:696 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:704 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:796 msgid "Add Test Result Template" msgstr "" #: part/templates/part/import_wizard/ajax_part_upload.html:29 #: part/templates/part/import_wizard/part_upload.html:14 -msgid "Unsuffitient privileges." +msgid "Insufficient privileges." msgstr "" #: part/templates/part/import_wizard/part_upload.html:8 @@ -5715,6 +5792,34 @@ msgstr "" msgid "Import Parts from File" msgstr "" +#: part/templates/part/import_wizard/part_upload.html:31 +msgid "Requirements for part import" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "The part import file must contain the required named columns as provided in the " +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:89 +msgid "Download Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:92 +#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 +#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 +msgid "Format" +msgstr "Formaat" + +#: part/templates/part/import_wizard/part_upload.html:93 +#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 +#: templates/js/translated/order.js:999 +msgid "Select file format" +msgstr "Selecteer bestandsindeling" + #: part/templates/part/part_app_base.html:12 msgid "Part List" msgstr "" @@ -5804,12 +5909,12 @@ msgstr "" #: templates/js/translated/company.js:660 #: templates/js/translated/company.js:921 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:677 templates/js/translated/part.js:755 +#: templates/js/translated/part.js:680 templates/js/translated/part.js:1026 msgid "Inactive" msgstr "" #: part/templates/part/part_base.html:165 -#: part/templates/part/part_base.html:666 +#: part/templates/part/part_base.html:680 msgid "Show Part Details" msgstr "" @@ -5837,38 +5942,38 @@ msgid "Minimum stock level" msgstr "" #: part/templates/part/part_base.html:330 templates/js/translated/bom.js:1032 -#: templates/js/translated/part.js:798 templates/js/translated/part.js:1604 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:1875 #: templates/js/translated/pricing.js:124 #: templates/js/translated/pricing.js:762 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:345 +#: part/templates/part/part_base.html:359 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:349 +#: part/templates/part/part_base.html:363 #: stock/templates/stock/item_base.html:331 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:449 +#: part/templates/part/part_base.html:463 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:495 +#: part/templates/part/part_base.html:509 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:512 +#: part/templates/part/part_base.html:526 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:564 +#: part/templates/part/part_base.html:578 msgid "No matching images found" msgstr "Geen overeenkomende afbeeldingen gevonden" -#: part/templates/part/part_base.html:660 +#: part/templates/part/part_base.html:674 msgid "Hide Part Details" msgstr "" @@ -5920,15 +6025,6 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" -#: part/templates/part/part_scheduling.html:13 -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:63 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:2043 templates/js/translated/pricing.js:537 -#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2516 -msgid "Date" -msgstr "Datum" - #: part/templates/part/part_scheduling.html:14 msgid "Scheduled Quantity" msgstr "" @@ -5941,7 +6037,7 @@ msgstr "" msgid "Scheduling" msgstr "" -#: part/templates/part/part_sidebar.html:48 +#: part/templates/part/part_sidebar.html:53 msgid "Test Templates" msgstr "" @@ -5960,7 +6056,7 @@ msgstr "" #: part/templates/part/prices.html:25 stock/admin.py:106 #: stock/templates/stock/item_base.html:440 #: templates/js/translated/company.js:1039 -#: templates/js/translated/stock.js:1940 +#: templates/js/translated/stock.js:1935 msgid "Last Updated" msgstr "" @@ -6023,8 +6119,8 @@ msgstr "" msgid "Add Sell Price Break" msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:639 -#: templates/js/translated/part.js:1373 templates/js/translated/part.js:1375 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:1644 templates/js/translated/part.js:1646 msgid "No Stock" msgstr "" @@ -6087,27 +6183,32 @@ msgstr "" msgid "{title} v{version}" msgstr "" -#: part/views.py:109 +#: part/views.py:111 msgid "Match References" msgstr "" -#: part/views.py:354 +#: part/views.py:239 +#, python-brace-format +msgid "Can't import part {name} because there is no category assigned" +msgstr "" + +#: part/views.py:378 msgid "Part QR Code" msgstr "" -#: part/views.py:372 +#: part/views.py:396 msgid "Select Part Image" msgstr "Selecteer afbeelding onderdeel" -#: part/views.py:398 +#: part/views.py:422 msgid "Updated part image" msgstr "Afbeelding onderdeel bijgewerkt" -#: part/views.py:401 +#: part/views.py:425 msgid "Part image not found" msgstr "Afbeelding van onderdeel niet gevonden" -#: part/views.py:493 +#: part/views.py:517 msgid "Part Pricing" msgstr "" @@ -6156,28 +6257,48 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:29 -#: plugin/builtin/integration/core_notifications.py:31 +#: plugin/builtin/integration/core_notifications.py:33 msgid "InvenTree contributors" msgstr "" -#: plugin/builtin/integration/core_notifications.py:30 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:32 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notificaton methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:37 -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:80 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:38 -#: plugin/builtin/integration/core_notifications.py:57 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:81 msgid "Allow sending of emails for event notifications" msgstr "" +#: plugin/builtin/integration/core_notifications.py:45 +msgid "Enable slack notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:46 +msgid "Allow sending of slack channel messages for event notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:51 +msgid "Slack incoming webhook url" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:52 +msgid "URL that is used to send messages to a slack channel" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:162 +msgid "Open link" +msgstr "" + #: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" @@ -6409,6 +6530,10 @@ msgstr "" msgid "Asset file description" msgstr "" +#: report/templates/report/inventree_bill_of_materials_report.html:133 +msgid "Materials needed" +msgstr "" + #: report/templates/report/inventree_build_order_base.html:146 msgid "Required For" msgstr "Vereist Voor" @@ -6427,7 +6552,7 @@ msgstr "" #: templates/js/translated/build.js:1244 templates/js/translated/build.js:1745 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:121 templates/js/translated/order.js:3611 -#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:522 +#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:521 msgid "Serial Number" msgstr "Serienummer" @@ -6459,8 +6584,9 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: stock/admin.py:87 templates/js/translated/stock.js:642 -#: templates/js/translated/stock.js:812 templates/js/translated/stock.js:2765 +#: stock/admin.py:87 templates/js/translated/part.js:749 +#: templates/js/translated/stock.js:641 templates/js/translated/stock.js:811 +#: templates/js/translated/stock.js:2760 msgid "Serial" msgstr "" @@ -6515,13 +6641,9 @@ msgstr "" msgid "Purchase Order ID" msgstr "" -#: stock/admin.py:107 templates/js/translated/stock.js:1910 -msgid "Stocktake" -msgstr "" - #: stock/admin.py:108 stock/models.py:764 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/stock.js:1924 +#: templates/js/translated/stock.js:1919 msgid "Expiry Date" msgstr "" @@ -6936,7 +7058,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2912 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2907 msgid "Install Stock Item" msgstr "" @@ -6944,7 +7066,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1561 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1560 msgid "Add Test Result" msgstr "" @@ -7117,10 +7239,6 @@ msgstr "" msgid "Stale" msgstr "" -#: stock/templates/stock/item_base.html:445 -msgid "Last Stocktake" -msgstr "" - #: stock/templates/stock/item_base.html:449 msgid "No stocktake performed" msgstr "" @@ -7394,7 +7512,8 @@ msgstr "" #: templates/InvenTree/notifications/notifications.html:10 #: templates/InvenTree/notifications/sidebar.html:5 -#: templates/InvenTree/settings/sidebar.html:17 templates/notifications.html:5 +#: templates/InvenTree/settings/sidebar.html:17 +#: templates/InvenTree/settings/sidebar.html:35 templates/notifications.html:5 msgid "Notifications" msgstr "" @@ -7475,6 +7594,14 @@ msgstr "" msgid "Open in new tab" msgstr "" +#: templates/InvenTree/settings/notifications.html:9 +msgid "Global Notification Settings" +msgstr "" + +#: templates/InvenTree/settings/notifications.html:18 +msgid "Slug" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -7492,7 +7619,7 @@ msgid "Part Parameter Templates" msgstr "" #: templates/InvenTree/settings/plugin.html:10 -#: templates/InvenTree/settings/sidebar.html:55 +#: templates/InvenTree/settings/sidebar.html:57 msgid "Plugin Settings" msgstr "" @@ -7501,7 +7628,7 @@ msgid "Changing the settings below require you to immediately restart the server msgstr "" #: templates/InvenTree/settings/plugin.html:38 -#: templates/InvenTree/settings/sidebar.html:57 +#: templates/InvenTree/settings/sidebar.html:59 msgid "Plugins" msgstr "" @@ -7669,67 +7796,67 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:117 +#: templates/InvenTree/settings/settings.html:118 msgid "Edit Plugin Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:119 +#: templates/InvenTree/settings/settings.html:120 msgid "Edit Notification Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:122 +#: templates/InvenTree/settings/settings.html:123 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:124 +#: templates/InvenTree/settings/settings.html:125 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:214 +#: templates/InvenTree/settings/settings.html:215 msgid "No category parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:236 -#: templates/InvenTree/settings/settings.html:361 -msgid "Edit Template" -msgstr "" - #: templates/InvenTree/settings/settings.html:237 #: templates/InvenTree/settings/settings.html:362 +msgid "Edit Template" +msgstr "" + +#: templates/InvenTree/settings/settings.html:238 +#: templates/InvenTree/settings/settings.html:363 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:277 +#: templates/InvenTree/settings/settings.html:278 msgid "Create Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:322 +#: templates/InvenTree/settings/settings.html:323 msgid "Delete Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:334 +#: templates/InvenTree/settings/settings.html:335 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:338 +#: templates/InvenTree/settings/settings.html:339 #: templates/js/translated/news.js:29 #: templates/js/translated/notification.js:36 msgid "ID" msgstr "" -#: templates/InvenTree/settings/settings.html:380 +#: templates/InvenTree/settings/settings.html:381 msgid "Create Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:399 +#: templates/InvenTree/settings/settings.html:400 msgid "Edit Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:413 +#: templates/InvenTree/settings/settings.html:414 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/InvenTree/settings/settings.html:421 +#: templates/InvenTree/settings/settings.html:422 msgid "Delete Part Parameter Template" msgstr "" @@ -7758,12 +7885,12 @@ msgid "Search Settings" msgstr "" #: templates/InvenTree/settings/sidebar.html:19 -#: templates/InvenTree/settings/sidebar.html:37 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Label Printing" msgstr "" #: templates/InvenTree/settings/sidebar.html:21 -#: templates/InvenTree/settings/sidebar.html:39 +#: templates/InvenTree/settings/sidebar.html:41 msgid "Reporting" msgstr "" @@ -7775,7 +7902,7 @@ msgstr "" msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:43 +#: templates/InvenTree/settings/sidebar.html:45 msgid "Categories" msgstr "" @@ -7945,64 +8072,64 @@ msgstr "" msgid "Do you really want to remove the selected email address?" msgstr "" -#: templates/InvenTree/settings/user_display.html:28 +#: templates/InvenTree/settings/user_display.html:29 msgid "Theme Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:38 +#: templates/InvenTree/settings/user_display.html:39 msgid "Select theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:49 +#: templates/InvenTree/settings/user_display.html:50 msgid "Set Theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:57 +#: templates/InvenTree/settings/user_display.html:58 msgid "Language Settings" msgstr "Taalinstellingen" -#: templates/InvenTree/settings/user_display.html:66 +#: templates/InvenTree/settings/user_display.html:67 msgid "Select language" msgstr "Taal selecteren" -#: templates/InvenTree/settings/user_display.html:82 +#: templates/InvenTree/settings/user_display.html:83 #, python-format msgid "%(lang_translated)s%% translated" msgstr "" -#: templates/InvenTree/settings/user_display.html:84 +#: templates/InvenTree/settings/user_display.html:85 msgid "No translations available" msgstr "" -#: templates/InvenTree/settings/user_display.html:91 +#: templates/InvenTree/settings/user_display.html:92 msgid "Set Language" msgstr "Taal instellen" -#: templates/InvenTree/settings/user_display.html:94 +#: templates/InvenTree/settings/user_display.html:95 msgid "Some languages are not complete" msgstr "Een aantal talen zijn nog niet compleet" -#: templates/InvenTree/settings/user_display.html:96 +#: templates/InvenTree/settings/user_display.html:97 msgid "Show only sufficent" msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "and hidden." msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "Show them too" msgstr "" -#: templates/InvenTree/settings/user_display.html:105 +#: templates/InvenTree/settings/user_display.html:106 msgid "Help the translation efforts!" msgstr "" -#: templates/InvenTree/settings/user_display.html:106 +#: templates/InvenTree/settings/user_display.html:107 msgid "Native language translation of the web application is community contributed via crowdin. Contributions are welcomed and encouraged." msgstr "" -#: templates/InvenTree/settings/user_display.html:107 +#: templates/InvenTree/settings/user_display.html:108 msgid "InvenTree Translation Project" msgstr "" @@ -8080,7 +8207,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:646 +#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:649 msgid "Confirm" msgstr "Bevestigen" @@ -8313,7 +8440,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 -#: templates/js/translated/part.js:2445 +#: templates/js/translated/part.js:2726 msgid "Minimum Quantity" msgstr "" @@ -8466,7 +8593,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1089 +#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1088 msgid "Remove stock item" msgstr "" @@ -8548,16 +8675,6 @@ msgstr "Sluit" msgid "Download BOM Template" msgstr "" -#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 -#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 -msgid "Format" -msgstr "Formaat" - -#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 -#: templates/js/translated/order.js:999 -msgid "Select file format" -msgstr "Selecteer bestandsindeling" - #: templates/js/translated/bom.js:320 msgid "Multi Level BOM" msgstr "" @@ -8688,7 +8805,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:1145 templates/js/translated/build.js:1923 -#: templates/js/translated/part.js:790 templates/js/translated/part.js:1572 +#: templates/js/translated/part.js:1061 templates/js/translated/part.js:1843 msgid "Includes variant stock" msgstr "" @@ -8773,13 +8890,13 @@ msgstr "Productieorder is onvolledig" msgid "Complete Build Order" msgstr "Voltooi Productieoorder" -#: templates/js/translated/build.js:317 templates/js/translated/stock.js:95 -#: templates/js/translated/stock.js:237 +#: templates/js/translated/build.js:317 templates/js/translated/stock.js:94 +#: templates/js/translated/stock.js:236 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:319 templates/js/translated/stock.js:97 -#: templates/js/translated/stock.js:239 +#: templates/js/translated/build.js:319 templates/js/translated/stock.js:96 +#: templates/js/translated/stock.js:238 msgid "Latest serial number" msgstr "" @@ -8987,9 +9104,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1466 -#: templates/js/translated/part.js:2003 templates/js/translated/stock.js:1725 -#: templates/js/translated/stock.js:2428 +#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1737 +#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1724 +#: templates/js/translated/stock.js:2423 msgid "Select" msgstr "" @@ -9001,7 +9118,7 @@ msgstr "Productieorder is achterstallig" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2695 +#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2690 msgid "No user information" msgstr "" @@ -9074,34 +9191,34 @@ msgid "No manufacturer parts found" msgstr "Geen fabrikantenonderdelen gevonden" #: templates/js/translated/company.js:652 -#: templates/js/translated/company.js:913 templates/js/translated/part.js:661 -#: templates/js/translated/part.js:747 +#: templates/js/translated/company.js:913 templates/js/translated/part.js:664 +#: templates/js/translated/part.js:1018 msgid "Template part" msgstr "" #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:917 templates/js/translated/part.js:665 -#: templates/js/translated/part.js:751 +#: templates/js/translated/company.js:917 templates/js/translated/part.js:668 +#: templates/js/translated/part.js:1022 msgid "Assembled part" msgstr "Samengesteld onderdeel" -#: templates/js/translated/company.js:784 templates/js/translated/part.js:870 +#: templates/js/translated/company.js:784 templates/js/translated/part.js:1141 msgid "No parameters found" msgstr "Geen parameters gevonden" -#: templates/js/translated/company.js:821 templates/js/translated/part.js:912 +#: templates/js/translated/company.js:821 templates/js/translated/part.js:1183 msgid "Edit parameter" msgstr "Parameter bewerken" -#: templates/js/translated/company.js:822 templates/js/translated/part.js:913 +#: templates/js/translated/company.js:822 templates/js/translated/part.js:1184 msgid "Delete parameter" msgstr "Parameter verwijderen" -#: templates/js/translated/company.js:841 templates/js/translated/part.js:930 +#: templates/js/translated/company.js:841 templates/js/translated/part.js:1201 msgid "Edit Parameter" msgstr "Parameter bewerken" -#: templates/js/translated/company.js:852 templates/js/translated/part.js:942 +#: templates/js/translated/company.js:852 templates/js/translated/part.js:1213 msgid "Delete Parameter" msgstr "Parameter verwijderen" @@ -9181,61 +9298,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:369 templates/js/translated/forms.js:384 -#: templates/js/translated/forms.js:398 templates/js/translated/forms.js:412 +#: templates/js/translated/forms.js:372 templates/js/translated/forms.js:387 +#: templates/js/translated/forms.js:401 templates/js/translated/forms.js:415 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:371 +#: templates/js/translated/forms.js:374 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:386 +#: templates/js/translated/forms.js:389 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:400 +#: templates/js/translated/forms.js:403 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:414 +#: templates/js/translated/forms.js:417 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:672 +#: templates/js/translated/forms.js:675 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:773 +#: templates/js/translated/forms.js:776 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1266 templates/modals.html:19 +#: templates/js/translated/forms.js:1269 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1703 +#: templates/js/translated/forms.js:1706 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1919 templates/search.html:29 +#: templates/js/translated/forms.js:1922 templates/search.html:29 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2172 +#: templates/js/translated/forms.js:2175 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:2640 +#: templates/js/translated/forms.js:2643 msgid "Select Columns" msgstr "" @@ -9256,7 +9373,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1113 +#: templates/js/translated/stock.js:1112 msgid "Select Stock Items" msgstr "" @@ -9590,7 +9707,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2184 +#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2179 msgid "Stock Status" msgstr "" @@ -9614,7 +9731,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "Ontvang Artikelen Inkooporder" -#: templates/js/translated/order.js:1982 templates/js/translated/part.js:983 +#: templates/js/translated/order.js:1982 templates/js/translated/part.js:1254 msgid "No purchase orders found" msgstr "Geen inkooporder gevonden" @@ -9647,8 +9764,8 @@ msgstr "Geen artikelen gevonden" msgid "Total" msgstr "Totaal" -#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1085 -#: templates/js/translated/part.js:1137 +#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1356 +#: templates/js/translated/part.js:1408 msgid "Total Quantity" msgstr "" @@ -9666,11 +9783,11 @@ msgid "Total Price" msgstr "Totaalprijs" #: templates/js/translated/order.js:2388 templates/js/translated/order.js:3900 -#: templates/js/translated/part.js:1121 +#: templates/js/translated/part.js:1392 msgid "This line item is overdue" msgstr "Dit artikel is achterstallig" -#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1166 +#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1437 msgid "Receive line item" msgstr "Artikel ontvangen" @@ -9791,7 +9908,7 @@ msgid "Delete Stock Allocation" msgstr "Verwijder Voorraadtoewijzing" #: templates/js/translated/order.js:3623 templates/js/translated/order.js:3712 -#: templates/js/translated/stock.js:1641 +#: templates/js/translated/stock.js:1640 msgid "Shipped to customer" msgstr "Verzonden aan klant" @@ -9835,334 +9952,358 @@ msgstr "Geen overeenkomende artikelen" msgid "No matching lines" msgstr "Geen overeenkomende regels" -#: templates/js/translated/part.js:52 +#: templates/js/translated/part.js:55 msgid "Part Attributes" msgstr "" -#: templates/js/translated/part.js:56 +#: templates/js/translated/part.js:59 msgid "Part Creation Options" msgstr "" -#: templates/js/translated/part.js:60 +#: templates/js/translated/part.js:63 msgid "Part Duplication Options" msgstr "" -#: templates/js/translated/part.js:64 +#: templates/js/translated/part.js:67 msgid "Supplier Options" msgstr "" -#: templates/js/translated/part.js:78 +#: templates/js/translated/part.js:81 msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:168 +#: templates/js/translated/part.js:171 msgid "Create Initial Stock" msgstr "" -#: templates/js/translated/part.js:169 +#: templates/js/translated/part.js:172 msgid "Create an initial stock item for this part" msgstr "" -#: templates/js/translated/part.js:176 +#: templates/js/translated/part.js:179 msgid "Initial Stock Quantity" msgstr "" -#: templates/js/translated/part.js:177 +#: templates/js/translated/part.js:180 msgid "Specify initial stock quantity for this part" msgstr "" -#: templates/js/translated/part.js:184 +#: templates/js/translated/part.js:187 msgid "Select destination stock location" msgstr "" -#: templates/js/translated/part.js:202 +#: templates/js/translated/part.js:205 msgid "Copy Category Parameters" msgstr "" -#: templates/js/translated/part.js:203 +#: templates/js/translated/part.js:206 msgid "Copy parameter templates from selected part category" msgstr "" -#: templates/js/translated/part.js:211 +#: templates/js/translated/part.js:214 msgid "Add Supplier Data" msgstr "" -#: templates/js/translated/part.js:212 +#: templates/js/translated/part.js:215 msgid "Create initial supplier data for this part" msgstr "" -#: templates/js/translated/part.js:268 +#: templates/js/translated/part.js:271 msgid "Copy Image" msgstr "Afbeelding kopiëren" -#: templates/js/translated/part.js:269 +#: templates/js/translated/part.js:272 msgid "Copy image from original part" msgstr "Afbeelding kopiëren van het oorspronkelijke onderdeel" -#: templates/js/translated/part.js:277 +#: templates/js/translated/part.js:280 msgid "Copy bill of materials from original part" msgstr "" -#: templates/js/translated/part.js:284 +#: templates/js/translated/part.js:287 msgid "Copy Parameters" msgstr "Parameters kopiëren" -#: templates/js/translated/part.js:285 +#: templates/js/translated/part.js:288 msgid "Copy parameter data from original part" msgstr "Parameter data kopiëren van het originele onderdeel" -#: templates/js/translated/part.js:298 +#: templates/js/translated/part.js:301 msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:313 templates/js/translated/stock.js:122 +#: templates/js/translated/part.js:316 templates/js/translated/stock.js:121 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:329 +#: templates/js/translated/part.js:332 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:342 +#: templates/js/translated/part.js:345 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:347 +#: templates/js/translated/part.js:350 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:359 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:360 +#: templates/js/translated/part.js:363 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:368 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:394 +#: templates/js/translated/part.js:397 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:396 +#: templates/js/translated/part.js:399 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:407 +#: templates/js/translated/part.js:410 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:459 +#: templates/js/translated/part.js:462 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:460 +#: templates/js/translated/part.js:463 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:477 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:476 +#: templates/js/translated/part.js:479 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:477 +#: templates/js/translated/part.js:480 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:478 +#: templates/js/translated/part.js:481 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:485 +#: templates/js/translated/part.js:488 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:521 +#: templates/js/translated/part.js:524 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:523 +#: templates/js/translated/part.js:526 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:531 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:530 +#: templates/js/translated/part.js:533 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:547 +#: templates/js/translated/part.js:550 msgid "Validating the BOM will mark each line item as valid" msgstr "Validatie van de BOM markeert ieder artikel als geldig" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:560 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:560 +#: templates/js/translated/part.js:563 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:585 +#: templates/js/translated/part.js:588 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1554 +#: templates/js/translated/part.js:612 templates/js/translated/part.js:1825 #: templates/js/translated/table_filters.js:488 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:622 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:653 templates/js/translated/part.js:739 +#: templates/js/translated/part.js:656 templates/js/translated/part.js:1010 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:657 templates/js/translated/part.js:743 +#: templates/js/translated/part.js:660 templates/js/translated/part.js:1014 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:669 +#: templates/js/translated/part.js:672 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:673 +#: templates/js/translated/part.js:676 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:815 +#: templates/js/translated/part.js:761 +msgid "Stock item has not been checked recently" +msgstr "" + +#: templates/js/translated/part.js:769 +msgid "Update item" +msgstr "" + +#: templates/js/translated/part.js:770 +msgid "Delete item" +msgstr "" + +#: templates/js/translated/part.js:871 +msgid "No stocktake information available" +msgstr "" + +#: templates/js/translated/part.js:910 templates/js/translated/part.js:933 +msgid "Edit Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:914 templates/js/translated/part.js:945 +msgid "Delete Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:1086 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1236 +#: templates/js/translated/part.js:1507 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1260 +#: templates/js/translated/part.js:1531 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1327 templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1598 templates/js/translated/part.js:1936 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1521 +#: templates/js/translated/part.js:1792 msgid "No category" msgstr "" -#: templates/js/translated/part.js:1552 +#: templates/js/translated/part.js:1823 msgid "No stock" msgstr "" -#: templates/js/translated/part.js:1576 +#: templates/js/translated/part.js:1847 msgid "Allocated to build orders" msgstr "" -#: templates/js/translated/part.js:1580 +#: templates/js/translated/part.js:1851 msgid "Allocated to sales orders" msgstr "" -#: templates/js/translated/part.js:1679 templates/js/translated/part.js:1922 -#: templates/js/translated/stock.js:2387 +#: templates/js/translated/part.js:1960 templates/js/translated/part.js:2203 +#: templates/js/translated/stock.js:2382 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1695 +#: templates/js/translated/part.js:1976 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1761 +#: templates/js/translated/part.js:2042 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1766 +#: templates/js/translated/part.js:2047 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1771 +#: templates/js/translated/part.js:2052 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1784 +#: templates/js/translated/part.js:2065 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1942 templates/js/translated/stock.js:2407 +#: templates/js/translated/part.js:2223 templates/js/translated/stock.js:2402 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2022 +#: templates/js/translated/part.js:2303 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2038 +#: templates/js/translated/part.js:2319 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2383 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2153 templates/js/translated/stock.js:1338 +#: templates/js/translated/part.js:2434 templates/js/translated/stock.js:1337 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2154 templates/js/translated/stock.js:1339 -#: templates/js/translated/stock.js:1599 +#: templates/js/translated/part.js:2435 templates/js/translated/stock.js:1338 +#: templates/js/translated/stock.js:1598 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2441 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2182 +#: templates/js/translated/part.js:2463 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2196 +#: templates/js/translated/part.js:2477 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2277 templates/js/translated/part.js:2278 +#: templates/js/translated/part.js:2558 templates/js/translated/part.js:2559 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2280 +#: templates/js/translated/part.js:2561 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:2286 +#: templates/js/translated/part.js:2567 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:2336 +#: templates/js/translated/part.js:2617 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2623 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:2438 +#: templates/js/translated/part.js:2719 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2454 +#: templates/js/translated/part.js:2735 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:2499 +#: templates/js/translated/part.js:2780 msgid "Minimum Stock Level" msgstr "" @@ -10290,388 +10431,388 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:74 +#: templates/js/translated/stock.js:73 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:104 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:114 +#: templates/js/translated/stock.js:113 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:148 +#: templates/js/translated/stock.js:147 msgid "Edit Stock Location" msgstr "Bewerk Voorraadlocatie" -#: templates/js/translated/stock.js:163 +#: templates/js/translated/stock.js:162 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:177 +#: templates/js/translated/stock.js:176 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:184 +#: templates/js/translated/stock.js:183 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:193 +#: templates/js/translated/stock.js:192 msgid "Delete Stock Location" msgstr "Verwijder Voorraadlocatie" -#: templates/js/translated/stock.js:197 +#: templates/js/translated/stock.js:196 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:201 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:256 +#: templates/js/translated/stock.js:255 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:298 +#: templates/js/translated/stock.js:297 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:304 +#: templates/js/translated/stock.js:303 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:368 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:389 +#: templates/js/translated/stock.js:388 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:405 +#: templates/js/translated/stock.js:404 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:410 +#: templates/js/translated/stock.js:409 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:431 +#: templates/js/translated/stock.js:430 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:481 +#: templates/js/translated/stock.js:480 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:494 +#: templates/js/translated/stock.js:493 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:519 +#: templates/js/translated/stock.js:518 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:523 templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:522 templates/js/translated/stock.js:523 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:540 +#: templates/js/translated/stock.js:539 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:560 +#: templates/js/translated/stock.js:559 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:568 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:692 +#: templates/js/translated/stock.js:691 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:693 +#: templates/js/translated/stock.js:692 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:770 +#: templates/js/translated/stock.js:769 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:771 +#: templates/js/translated/stock.js:770 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:773 +#: templates/js/translated/stock.js:772 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:774 +#: templates/js/translated/stock.js:773 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:863 +#: templates/js/translated/stock.js:862 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:864 +#: templates/js/translated/stock.js:863 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:958 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:959 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:966 +#: templates/js/translated/stock.js:965 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:967 +#: templates/js/translated/stock.js:966 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:971 +#: templates/js/translated/stock.js:970 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:972 +#: templates/js/translated/stock.js:971 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:976 +#: templates/js/translated/stock.js:975 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:977 users/models.py:220 +#: templates/js/translated/stock.js:976 users/models.py:221 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:981 +#: templates/js/translated/stock.js:980 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1114 +#: templates/js/translated/stock.js:1113 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1141 +#: templates/js/translated/stock.js:1140 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1277 +#: templates/js/translated/stock.js:1276 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1279 +#: templates/js/translated/stock.js:1278 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1284 +#: templates/js/translated/stock.js:1283 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1331 +#: templates/js/translated/stock.js:1330 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1334 +#: templates/js/translated/stock.js:1333 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1360 +#: templates/js/translated/stock.js:1359 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1417 +#: templates/js/translated/stock.js:1416 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1582 +#: templates/js/translated/stock.js:1581 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1604 +#: templates/js/translated/stock.js:1603 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1633 +#: templates/js/translated/stock.js:1632 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1637 +#: templates/js/translated/stock.js:1636 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1645 +#: templates/js/translated/stock.js:1644 msgid "Assigned to Sales Order" msgstr "Toegewezen aan Verkooporder" -#: templates/js/translated/stock.js:1651 +#: templates/js/translated/stock.js:1650 msgid "No stock location set" msgstr "Geen voorraadlocatie ingesteld" -#: templates/js/translated/stock.js:1820 +#: templates/js/translated/stock.js:1815 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1825 +#: templates/js/translated/stock.js:1820 msgid "Stock item assigned to sales order" msgstr "Voorraadartikel toegewezen aan verkooporder" -#: templates/js/translated/stock.js:1828 +#: templates/js/translated/stock.js:1823 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1831 +#: templates/js/translated/stock.js:1826 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1833 +#: templates/js/translated/stock.js:1828 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1835 +#: templates/js/translated/stock.js:1830 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1838 +#: templates/js/translated/stock.js:1833 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1837 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1844 +#: templates/js/translated/stock.js:1839 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1846 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1853 +#: templates/js/translated/stock.js:1848 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1855 +#: templates/js/translated/stock.js:1850 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1859 +#: templates/js/translated/stock.js:1854 #: templates/js/translated/table_filters.js:216 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1989 +#: templates/js/translated/stock.js:1984 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2026 +#: templates/js/translated/stock.js:2021 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2199 +#: templates/js/translated/stock.js:2194 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2213 +#: templates/js/translated/stock.js:2208 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2214 +#: templates/js/translated/stock.js:2209 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2446 +#: templates/js/translated/stock.js:2441 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2536 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2557 +#: templates/js/translated/stock.js:2552 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2579 +#: templates/js/translated/stock.js:2574 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2598 +#: templates/js/translated/stock.js:2593 msgid "Purchase order no longer exists" msgstr "Inkooporder bestaat niet meer" -#: templates/js/translated/stock.js:2617 +#: templates/js/translated/stock.js:2612 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2635 +#: templates/js/translated/stock.js:2630 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2658 +#: templates/js/translated/stock.js:2653 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2666 +#: templates/js/translated/stock.js:2661 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2737 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2793 templates/js/translated/stock.js:2829 +#: templates/js/translated/stock.js:2788 templates/js/translated/stock.js:2824 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2845 +#: templates/js/translated/stock.js:2840 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2866 +#: templates/js/translated/stock.js:2861 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2867 +#: templates/js/translated/stock.js:2862 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2869 +#: templates/js/translated/stock.js:2864 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2870 +#: templates/js/translated/stock.js:2865 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:2866 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2872 +#: templates/js/translated/stock.js:2867 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2885 +#: templates/js/translated/stock.js:2880 msgid "Select part to install" msgstr "" @@ -10696,7 +10837,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:92 -#: templates/js/translated/table_filters.js:516 +#: templates/js/translated/table_filters.js:520 msgid "Has Pricing" msgstr "" @@ -10912,6 +11053,10 @@ msgstr "" msgid "Purchasable" msgstr "" +#: templates/js/translated/table_filters.js:504 +msgid "Has stocktake entries" +msgstr "" + #: templates/js/translated/tables.js:70 msgid "Display calendar view" msgstr "Toon Kalenderweergave" @@ -11206,35 +11351,35 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:207 +#: users/models.py:208 msgid "Permission set" msgstr "" -#: users/models.py:215 +#: users/models.py:216 msgid "Group" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "View" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "Permission to view items" msgstr "" -#: users/models.py:220 +#: users/models.py:221 msgid "Permission to add items" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Change" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Permissions to edit items" msgstr "" -#: users/models.py:224 +#: users/models.py:225 msgid "Permission to delete items" msgstr "" diff --git a/InvenTree/locale/no/LC_MESSAGES/django.po b/InvenTree/locale/no/LC_MESSAGES/django.po index a077acaec9..a1251015be 100644 --- a/InvenTree/locale/no/LC_MESSAGES/django.po +++ b/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: 2022-12-30 20:46+0000\n" -"PO-Revision-Date: 2022-12-31 11:29\n" +"POT-Creation-Date: 2023-01-01 11:05+0000\n" +"PO-Revision-Date: 2023-01-01 11:26\n" "Last-Translator: \n" "Language-Team: Norwegian\n" "Language: no_NO\n" @@ -34,7 +34,7 @@ msgstr "Oppgi dato" #: company/templates/company/sidebar.html:25 order/models.py:943 #: order/templates/order/po_sidebar.html:11 #: order/templates/order/so_sidebar.html:17 part/admin.py:27 -#: part/templates/part/part_sidebar.html:57 +#: part/models.py:2932 part/templates/part/part_sidebar.html:62 #: report/templates/report/inventree_build_order_base.html:172 #: stock/admin.py:103 stock/models.py:2061 stock/models.py:2169 #: stock/serializers.py:321 stock/serializers.py:454 stock/serializers.py:535 @@ -44,8 +44,8 @@ msgstr "Oppgi dato" #: templates/js/translated/company.js:1023 #: templates/js/translated/order.js:2435 templates/js/translated/order.js:2569 #: templates/js/translated/order.js:3067 templates/js/translated/order.js:4004 -#: templates/js/translated/order.js:4385 templates/js/translated/stock.js:1413 -#: templates/js/translated/stock.js:2020 +#: templates/js/translated/order.js:4385 templates/js/translated/part.js:882 +#: templates/js/translated/stock.js:1412 templates/js/translated/stock.js:2015 msgid "Notes" msgstr "Notater" @@ -204,18 +204,18 @@ msgstr "Vedlegg" msgid "Select file to attach" msgstr "Velg fil å legge ved" -#: InvenTree/models.py:412 common/models.py:2366 company/models.py:129 +#: InvenTree/models.py:412 common/models.py:2373 company/models.py:129 #: company/models.py:281 company/models.py:516 order/models.py:85 -#: order/models.py:1282 part/admin.py:25 part/models.py:865 +#: order/models.py:1282 part/admin.py:25 part/models.py:866 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: stock/admin.py:102 templates/js/translated/company.js:692 #: templates/js/translated/company.js:1012 -#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1615 +#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1886 msgid "Link" msgstr "Lenke" -#: InvenTree/models.py:413 build/models.py:290 part/models.py:866 +#: InvenTree/models.py:413 build/models.py:290 part/models.py:867 #: stock/models.py:716 msgid "Link to external URL" msgstr "Lenke til ekstern URL" @@ -229,12 +229,13 @@ msgstr "Kommenter" msgid "File comment" msgstr "Kommentar til fil" -#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1810 -#: common/models.py:1811 common/models.py:2034 common/models.py:2035 -#: common/models.py:2296 common/models.py:2297 part/models.py:2948 -#: part/models.py:2968 plugin/models.py:264 plugin/models.py:265 +#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1817 +#: common/models.py:1818 common/models.py:2041 common/models.py:2042 +#: common/models.py:2303 common/models.py:2304 part/models.py:2940 +#: part/models.py:3026 part/models.py:3046 plugin/models.py:264 +#: plugin/models.py:265 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2689 +#: templates/js/translated/stock.js:2684 msgid "User" msgstr "Bruker" @@ -271,19 +272,20 @@ msgstr "Feil ved endring av navn" msgid "Invalid choice" msgstr "Ugyldig valg" -#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2020 -#: company/models.py:363 label/models.py:101 part/models.py:809 -#: part/models.py:3123 plugin/models.py:94 report/models.py:152 +#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2027 +#: company/models.py:363 label/models.py:101 part/models.py:810 +#: part/models.py:3201 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 +#: templates/InvenTree/settings/notifications.html:17 #: templates/InvenTree/settings/plugin.html:60 #: templates/InvenTree/settings/plugin.html:104 #: templates/InvenTree/settings/plugin_settings.html:23 -#: templates/InvenTree/settings/settings.html:344 +#: templates/InvenTree/settings/settings.html:345 #: templates/js/translated/company.js:581 #: templates/js/translated/company.js:794 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:711 templates/js/translated/part.js:880 -#: templates/js/translated/part.js:2010 templates/js/translated/stock.js:2434 +#: templates/js/translated/part.js:982 templates/js/translated/part.js:1151 +#: templates/js/translated/part.js:2291 templates/js/translated/stock.js:2429 msgid "Name" msgstr "Navn" @@ -292,24 +294,25 @@ msgstr "Navn" #: company/models.py:522 company/templates/company/company_base.html:72 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:108 label/models.py:108 -#: order/models.py:83 part/admin.py:141 part/admin.py:222 part/models.py:832 -#: part/models.py:3132 part/templates/part/category.html:75 +#: order/models.py:83 part/admin.py:174 part/admin.py:255 part/models.py:833 +#: part/models.py:3210 part/templates/part/category.html:75 #: part/templates/part/part_base.html:172 #: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/admin.py:25 stock/templates/stock/location.html:117 +#: templates/InvenTree/settings/notifications.html:19 #: templates/InvenTree/settings/plugin_settings.html:28 -#: templates/InvenTree/settings/settings.html:355 +#: templates/InvenTree/settings/settings.html:356 #: templates/js/translated/bom.js:592 templates/js/translated/bom.js:895 #: templates/js/translated/build.js:2596 templates/js/translated/company.js:445 #: templates/js/translated/company.js:703 #: templates/js/translated/company.js:987 templates/js/translated/order.js:2030 #: templates/js/translated/order.js:2267 templates/js/translated/order.js:2845 -#: templates/js/translated/part.js:773 templates/js/translated/part.js:1223 -#: templates/js/translated/part.js:1497 templates/js/translated/part.js:2046 -#: templates/js/translated/part.js:2121 templates/js/translated/stock.js:1787 -#: templates/js/translated/stock.js:2466 templates/js/translated/stock.js:2526 +#: templates/js/translated/part.js:1044 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1768 templates/js/translated/part.js:2327 +#: templates/js/translated/part.js:2402 templates/js/translated/stock.js:1782 +#: templates/js/translated/stock.js:2461 templates/js/translated/stock.js:2521 msgid "Description" msgstr "Beskrivelse" @@ -322,7 +325,7 @@ msgid "parent" msgstr "overkategori" #: InvenTree/models.py:580 InvenTree/models.py:581 -#: templates/js/translated/part.js:2055 templates/js/translated/stock.js:2475 +#: templates/js/translated/part.js:2336 templates/js/translated/stock.js:2470 msgid "Path" msgstr "Sti" @@ -354,7 +357,7 @@ msgstr "Serverfeil" msgid "An error has been logged by the server." msgstr "En feil har blitt logget av serveren." -#: InvenTree/serializers.py:58 part/models.py:3468 +#: InvenTree/serializers.py:58 part/models.py:3546 msgid "Must be a valid number" msgstr "Nummer må være gyldig" @@ -421,107 +424,107 @@ msgstr "URL-adressen til ekstern bildefil" msgid "Downloading images from remote URL is not enabled" msgstr "Nedlasting av bilder fra ekstern URL er ikke aktivert" -#: InvenTree/settings.py:639 +#: InvenTree/settings.py:642 msgid "Czech" msgstr "Tsjekkisk" -#: InvenTree/settings.py:640 +#: InvenTree/settings.py:643 msgid "Danish" msgstr "Dansk" -#: InvenTree/settings.py:641 +#: InvenTree/settings.py:644 msgid "German" msgstr "Tysk" -#: InvenTree/settings.py:642 +#: InvenTree/settings.py:645 msgid "Greek" msgstr "Gresk" -#: InvenTree/settings.py:643 +#: InvenTree/settings.py:646 msgid "English" msgstr "Engelsk" -#: InvenTree/settings.py:644 +#: InvenTree/settings.py:647 msgid "Spanish" msgstr "Spansk" -#: InvenTree/settings.py:645 +#: InvenTree/settings.py:648 msgid "Spanish (Mexican)" msgstr "Spansk (Meksikansk)" -#: InvenTree/settings.py:646 +#: InvenTree/settings.py:649 msgid "Farsi / Persian" msgstr "Farsi / Persisk" -#: InvenTree/settings.py:647 +#: InvenTree/settings.py:650 msgid "French" msgstr "Fransk" -#: InvenTree/settings.py:648 +#: InvenTree/settings.py:651 msgid "Hebrew" msgstr "Hebraisk" -#: InvenTree/settings.py:649 +#: InvenTree/settings.py:652 msgid "Hungarian" msgstr "Ungarsk" -#: InvenTree/settings.py:650 +#: InvenTree/settings.py:653 msgid "Italian" msgstr "Italiensk" -#: InvenTree/settings.py:651 +#: InvenTree/settings.py:654 msgid "Japanese" msgstr "Japansk" -#: InvenTree/settings.py:652 +#: InvenTree/settings.py:655 msgid "Korean" msgstr "Koreansk" -#: InvenTree/settings.py:653 +#: InvenTree/settings.py:656 msgid "Dutch" msgstr "Nederlandsk" -#: InvenTree/settings.py:654 +#: InvenTree/settings.py:657 msgid "Norwegian" msgstr "Norsk" -#: InvenTree/settings.py:655 +#: InvenTree/settings.py:658 msgid "Polish" msgstr "Polsk" -#: InvenTree/settings.py:656 +#: InvenTree/settings.py:659 msgid "Portuguese" msgstr "Portugisisk" -#: InvenTree/settings.py:657 +#: InvenTree/settings.py:660 msgid "Portuguese (Brazilian)" msgstr "Portugisisk (Brasilian)" -#: InvenTree/settings.py:658 +#: InvenTree/settings.py:661 msgid "Russian" msgstr "Russisk" -#: InvenTree/settings.py:659 +#: InvenTree/settings.py:662 msgid "Slovenian" msgstr "" -#: InvenTree/settings.py:660 +#: InvenTree/settings.py:663 msgid "Swedish" msgstr "Svensk" -#: InvenTree/settings.py:661 +#: InvenTree/settings.py:664 msgid "Thai" msgstr "Thailandsk" -#: InvenTree/settings.py:662 +#: InvenTree/settings.py:665 msgid "Turkish" msgstr "Tyrkisk" -#: InvenTree/settings.py:663 +#: InvenTree/settings.py:666 msgid "Vietnamese" msgstr "Vietnamesisk" -#: InvenTree/settings.py:664 +#: InvenTree/settings.py:667 msgid "Chinese" msgstr "Kinesisk" @@ -652,7 +655,7 @@ msgstr "Delt fra overordnet element" msgid "Split child item" msgstr "Delt fra underelement" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2124 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2119 msgid "Merged stock items" msgstr "Sammenslått lagervare" @@ -756,7 +759,7 @@ msgstr "Build ordre" #: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:141 -#: templates/InvenTree/settings/sidebar.html:47 +#: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:254 users/models.py:41 msgid "Build Orders" msgstr "Build Ordre" @@ -766,8 +769,9 @@ msgid "Build Order Reference" msgstr "Bygg ordrereferanse" #: build/models.py:155 order/models.py:241 order/models.py:651 -#: order/models.py:941 part/admin.py:224 part/models.py:3378 +#: order/models.py:941 part/admin.py:257 part/models.py:3456 #: part/templates/part/upload_bom.html:54 +#: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 #: templates/js/translated/bom.js:729 templates/js/translated/bom.js:905 @@ -793,13 +797,15 @@ msgstr "Build order som denne build er tildelt til" #: build/models.py:180 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:684 #: order/models.py:1038 order/models.py:1149 order/models.py:1150 -#: part/models.py:381 part/models.py:2781 part/models.py:2894 -#: part/models.py:2909 part/models.py:2928 part/models.py:2946 -#: part/models.py:3045 part/models.py:3166 part/models.py:3258 -#: part/models.py:3343 part/models.py:3659 part/serializers.py:853 -#: part/templates/part/part_app_base.html:8 +#: part/models.py:382 part/models.py:2799 part/models.py:2912 +#: part/models.py:2972 part/models.py:2987 part/models.py:3006 +#: part/models.py:3024 part/models.py:3123 part/models.py:3244 +#: part/models.py:3336 part/models.py:3421 part/models.py:3737 +#: part/serializers.py:894 part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 +#: report/templates/report/inventree_bill_of_materials_report.html:110 +#: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_base.html:109 #: report/templates/report/inventree_po_report.html:89 #: report/templates/report/inventree_so_report.html:90 stock/serializers.py:90 @@ -819,12 +825,12 @@ msgstr "Build order som denne build er tildelt til" #: templates/js/translated/order.js:1172 templates/js/translated/order.js:1676 #: templates/js/translated/order.js:2252 templates/js/translated/order.js:3199 #: templates/js/translated/order.js:3595 templates/js/translated/order.js:3825 -#: templates/js/translated/part.js:1208 templates/js/translated/part.js:1280 -#: templates/js/translated/part.js:1474 templates/js/translated/pricing.js:102 -#: templates/js/translated/stock.js:618 templates/js/translated/stock.js:783 -#: templates/js/translated/stock.js:993 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2552 templates/js/translated/stock.js:2747 -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/part.js:1479 templates/js/translated/part.js:1551 +#: templates/js/translated/part.js:1745 templates/js/translated/pricing.js:102 +#: templates/js/translated/stock.js:617 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:992 templates/js/translated/stock.js:1738 +#: templates/js/translated/stock.js:2547 templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2879 msgid "Part" msgstr "Del" @@ -890,7 +896,7 @@ msgstr "Batch kode" msgid "Batch code for this build output" msgstr "Batch kode for denne build output" -#: build/models.py:252 order/models.py:87 part/models.py:1001 +#: build/models.py:252 order/models.py:87 part/models.py:1002 #: part/templates/part/part_base.html:318 templates/js/translated/order.js:2858 msgid "Creation Date" msgstr "Opprettelsesdato" @@ -923,7 +929,7 @@ msgstr "Brukeren som utstede denne prosjekt order" #: build/models.py:283 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:101 #: order/templates/order/order_base.html:185 -#: order/templates/order/sales_order_base.html:183 part/models.py:1005 +#: order/templates/order/sales_order_base.html:183 part/models.py:1006 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2658 templates/js/translated/order.js:2064 msgid "Responsible" @@ -936,7 +942,7 @@ msgstr "Bruker ansvarlig for denne prosjekt order" #: build/models.py:289 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:188 -#: part/templates/part/part_base.html:376 stock/models.py:714 +#: part/templates/part/part_base.html:390 stock/models.py:714 #: stock/templates/stock/item_base.html:203 msgid "External Link" msgstr "Ekstern link" @@ -1011,8 +1017,8 @@ msgstr "Bygge for å tildele deler" #: templates/js/translated/order.js:107 templates/js/translated/order.js:3200 #: templates/js/translated/order.js:3502 templates/js/translated/order.js:3507 #: templates/js/translated/order.js:3602 templates/js/translated/order.js:3694 -#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 -#: templates/js/translated/stock.js:2625 +#: templates/js/translated/part.js:803 templates/js/translated/stock.js:618 +#: templates/js/translated/stock.js:783 templates/js/translated/stock.js:2620 msgid "Stock Item" msgstr "Lagervare" @@ -1022,12 +1028,13 @@ msgstr "Kilde lagervare" #: build/models.py:1364 build/serializers.py:192 #: build/templates/build/build_base.html:85 -#: build/templates/build/detail.html:34 common/models.py:1842 +#: build/templates/build/detail.html:34 common/models.py:1849 #: order/models.py:934 order/models.py:1460 order/serializers.py:1206 -#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:223 -#: part/forms.py:40 part/models.py:3359 +#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:256 +#: part/forms.py:40 part/models.py:2919 part/models.py:3437 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 +#: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_base.html:113 #: report/templates/report/inventree_po_report.html:90 #: report/templates/report/inventree_so_report.html:91 @@ -1049,13 +1056,14 @@ msgstr "Kilde lagervare" #: templates/js/translated/order.js:3201 templates/js/translated/order.js:3521 #: templates/js/translated/order.js:3608 templates/js/translated/order.js:3700 #: templates/js/translated/order.js:3847 templates/js/translated/order.js:4338 -#: templates/js/translated/part.js:1078 templates/js/translated/part.js:2568 +#: templates/js/translated/part.js:805 templates/js/translated/part.js:876 +#: templates/js/translated/part.js:1349 templates/js/translated/part.js:2849 #: templates/js/translated/pricing.js:114 #: templates/js/translated/pricing.js:207 #: templates/js/translated/pricing.js:255 -#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:490 -#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:814 -#: templates/js/translated/stock.js:2674 templates/js/translated/stock.js:2759 +#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:489 +#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:813 +#: templates/js/translated/stock.js:2669 templates/js/translated/stock.js:2754 msgid "Quantity" msgstr "Antall" @@ -1097,8 +1105,8 @@ msgid "Enter quantity for build output" msgstr "Angi antall for build utgang" #: build/serializers.py:207 build/serializers.py:683 order/models.py:327 -#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:645 -#: part/serializers.py:1016 stock/models.py:574 stock/models.py:1312 +#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:686 +#: part/serializers.py:1057 stock/models.py:574 stock/models.py:1312 #: stock/serializers.py:294 msgid "Quantity must be greater than zero" msgstr "Mengden må være større enn null" @@ -1113,7 +1121,7 @@ msgstr "Heltallsverdi kreves, materialene inneholder sporbare deler" #: build/serializers.py:231 order/serializers.py:463 order/serializers.py:1210 #: stock/serializers.py:303 templates/js/translated/order.js:1545 -#: templates/js/translated/stock.js:303 templates/js/translated/stock.js:491 +#: templates/js/translated/stock.js:302 templates/js/translated/stock.js:490 msgid "Serial Numbers" msgstr "Serienummer" @@ -1146,9 +1154,10 @@ msgstr "En liste over byggeresultater må oppgis" #: templates/js/translated/build.js:1759 templates/js/translated/order.js:1572 #: templates/js/translated/order.js:3514 templates/js/translated/order.js:3619 #: templates/js/translated/order.js:3627 templates/js/translated/order.js:3708 -#: templates/js/translated/part.js:183 templates/js/translated/stock.js:620 -#: templates/js/translated/stock.js:785 templates/js/translated/stock.js:995 -#: templates/js/translated/stock.js:1895 templates/js/translated/stock.js:2566 +#: templates/js/translated/part.js:186 templates/js/translated/part.js:804 +#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 +#: templates/js/translated/stock.js:994 templates/js/translated/stock.js:1890 +#: templates/js/translated/stock.js:2561 msgid "Location" msgstr "Beliggenhet" @@ -1162,8 +1171,8 @@ msgstr "Sted for ferdige byggeresultater" #: stock/templates/stock/item_base.html:421 #: templates/js/translated/barcode.js:237 templates/js/translated/build.js:2630 #: templates/js/translated/order.js:1681 templates/js/translated/order.js:2034 -#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1870 -#: templates/js/translated/stock.js:2643 templates/js/translated/stock.js:2775 +#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:2638 templates/js/translated/stock.js:2770 msgid "Status" msgstr "Status" @@ -1239,8 +1248,8 @@ msgstr "Antall nødvendige bygg er ikke fullført" msgid "Build order has incomplete outputs" msgstr "Bestillingen har ufullstendige resultater" -#: build/serializers.py:595 build/serializers.py:640 part/models.py:3495 -#: part/models.py:3651 +#: build/serializers.py:595 build/serializers.py:640 part/models.py:3573 +#: part/models.py:3729 msgid "BOM Item" msgstr "BOM varer" @@ -1406,7 +1415,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2670 templates/js/translated/order.js:2051 #: templates/js/translated/order.js:2382 templates/js/translated/order.js:2866 -#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1093 +#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1364 msgid "Target Date" msgstr "Måldato" @@ -1484,8 +1493,8 @@ msgstr "Tildelte deler" #: stock/templates/stock/item_base.html:168 #: templates/js/translated/build.js:1250 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:1884 -#: templates/js/translated/stock.js:2782 +#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:1879 +#: templates/js/translated/stock.js:2777 #: templates/js/translated/table_filters.js:179 #: templates/js/translated/table_filters.js:270 msgid "Batch" @@ -1617,8 +1626,8 @@ msgstr "Fullførte byggeresultater" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:86 #: order/templates/order/sales_order_detail.html:140 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:210 -#: part/templates/part/part_sidebar.html:55 stock/templates/stock/item.html:117 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:233 +#: part/templates/part/part_sidebar.html:60 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" msgstr "Vedlegg" @@ -1635,7 +1644,7 @@ msgstr "Tildeling fullført" msgid "All untracked stock items have been allocated" msgstr "Alle usporbar lagervarer har tildelt" -#: build/templates/build/index.html:18 part/templates/part/detail.html:316 +#: build/templates/build/index.html:18 part/templates/part/detail.html:339 msgid "New Build Order" msgstr "Ny byggeordre" @@ -1928,9 +1937,9 @@ msgstr "Kopier designmaler for kategoriparametere" msgid "Copy category parameter templates when creating a part" msgstr "Kopier kategori parametermaler ved oppretting av en del" -#: common/models.py:1014 part/admin.py:41 part/models.py:3168 +#: common/models.py:1014 part/admin.py:41 part/models.py:3246 #: report/models.py:158 templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:504 +#: templates/js/translated/table_filters.js:508 msgid "Template" msgstr "Mal" @@ -1938,7 +1947,7 @@ msgstr "Mal" msgid "Parts are templates by default" msgstr "Deler er maler som standard" -#: common/models.py:1021 part/admin.py:37 part/admin.py:229 part/models.py:957 +#: common/models.py:1021 part/admin.py:37 part/admin.py:262 part/models.py:958 #: templates/js/translated/bom.js:1595 #: templates/js/translated/table_filters.js:196 #: templates/js/translated/table_filters.js:467 @@ -1949,7 +1958,7 @@ msgstr "Montering" msgid "Parts can be assembled from other components by default" msgstr "Deler kan settes sammen fra andre komponenter som standard" -#: common/models.py:1028 part/admin.py:38 part/models.py:963 +#: common/models.py:1028 part/admin.py:38 part/models.py:964 #: templates/js/translated/table_filters.js:475 msgid "Component" msgstr "Komponent" @@ -1958,7 +1967,7 @@ msgstr "Komponent" msgid "Parts can be used as sub-components by default" msgstr "Deler kan bli brukt som underkomponenter som standard" -#: common/models.py:1035 part/admin.py:39 part/models.py:974 +#: common/models.py:1035 part/admin.py:39 part/models.py:975 msgid "Purchaseable" msgstr "Kjøpbar" @@ -1966,7 +1975,7 @@ msgstr "Kjøpbar" msgid "Parts are purchaseable by default" msgstr "Deler er kjøpbare som standard" -#: common/models.py:1042 part/admin.py:40 part/models.py:979 +#: common/models.py:1042 part/admin.py:40 part/models.py:980 #: templates/js/translated/table_filters.js:496 msgid "Salable" msgstr "Salgbar" @@ -1975,10 +1984,10 @@ msgstr "Salgbar" msgid "Parts are salable by default" msgstr "Deler er salgbare som standard" -#: common/models.py:1049 part/admin.py:42 part/models.py:969 +#: common/models.py:1049 part/admin.py:42 part/models.py:970 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:120 -#: templates/js/translated/table_filters.js:508 +#: templates/js/translated/table_filters.js:512 msgid "Trackable" msgstr "Sporbar" @@ -1986,10 +1995,10 @@ msgstr "Sporbar" msgid "Parts are trackable by default" msgstr "Deler er sporbare som standard" -#: common/models.py:1056 part/admin.py:43 part/models.py:989 +#: common/models.py:1056 part/admin.py:43 part/models.py:990 #: part/templates/part/part_base.html:156 #: templates/js/translated/table_filters.js:42 -#: templates/js/translated/table_filters.js:512 +#: templates/js/translated/table_filters.js:516 msgid "Virtual" msgstr "Virtuelle" @@ -2417,7 +2426,7 @@ msgstr "Aktiver hendelsesintegrering" msgid "Enable plugins to respond to internal events" msgstr "Aktiver plugins til å svare på interne hendelser" -#: common/models.py:1461 common/models.py:1803 +#: common/models.py:1461 common/models.py:1810 msgid "Settings key (must be unique - case insensitive" msgstr "Innstillingsnøkkel (må være unik - ufølsom for store og små bokstaver" @@ -2749,41 +2758,50 @@ msgstr "Del planlegging" msgid "Display part scheduling information" msgstr "" -#: common/models.py:1778 -msgid "Table String Length" +#: common/models.py:1778 part/templates/part/detail.html:61 +#: templates/js/translated/part.js:822 +msgid "Part Stocktake" msgstr "" #: common/models.py:1779 +msgid "Display part stocktake information" +msgstr "" + +#: common/models.py:1785 +msgid "Table String Length" +msgstr "" + +#: common/models.py:1786 msgid "Maximimum length limit for strings displayed in table views" msgstr "" -#: common/models.py:1843 +#: common/models.py:1850 msgid "Price break quantity" msgstr "" -#: common/models.py:1850 company/serializers.py:393 order/models.py:975 -#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1145 +#: common/models.py:1857 company/serializers.py:393 order/models.py:975 +#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1416 #: templates/js/translated/pricing.js:354 msgid "Price" msgstr "" -#: common/models.py:1851 +#: common/models.py:1858 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2011 common/models.py:2189 +#: common/models.py:2018 common/models.py:2196 msgid "Endpoint" msgstr "" -#: common/models.py:2012 +#: common/models.py:2019 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2021 +#: common/models.py:2028 msgid "Name for this webhook" msgstr "" -#: common/models.py:2026 part/admin.py:36 part/models.py:984 +#: common/models.py:2033 part/admin.py:36 part/models.py:985 #: plugin/models.py:100 templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:116 #: templates/js/translated/table_filters.js:336 @@ -2791,131 +2809,133 @@ msgstr "" msgid "Active" msgstr "Aktiv" -#: common/models.py:2027 +#: common/models.py:2034 msgid "Is this webhook active" msgstr "" -#: common/models.py:2041 +#: common/models.py:2048 msgid "Token" msgstr "Sjetong" -#: common/models.py:2042 +#: common/models.py:2049 msgid "Token for access" msgstr "Nøkkel for tilgang" -#: common/models.py:2049 +#: common/models.py:2056 msgid "Secret" msgstr "Hemmelig" -#: common/models.py:2050 +#: common/models.py:2057 msgid "Shared secret for HMAC" msgstr "Delt hemmlighet for HMAC" -#: common/models.py:2156 +#: common/models.py:2163 msgid "Message ID" msgstr "Melding ID" -#: common/models.py:2157 +#: common/models.py:2164 msgid "Unique identifier for this message" msgstr "Unik Id for denne meldingen" -#: common/models.py:2165 +#: common/models.py:2172 msgid "Host" msgstr "Vert" -#: common/models.py:2166 +#: common/models.py:2173 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2173 +#: common/models.py:2180 msgid "Header" msgstr "Tittel" -#: common/models.py:2174 +#: common/models.py:2181 msgid "Header of this message" msgstr "Overskrift for denne meldingen" -#: common/models.py:2180 +#: common/models.py:2187 msgid "Body" msgstr "Brødtekst" -#: common/models.py:2181 +#: common/models.py:2188 msgid "Body of this message" msgstr "" -#: common/models.py:2190 +#: common/models.py:2197 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2195 +#: common/models.py:2202 msgid "Worked on" msgstr "Arbeidet med" -#: common/models.py:2196 +#: common/models.py:2203 msgid "Was the work on this message finished?" msgstr "Var arbeidet med denne meldingen ferdig?" -#: common/models.py:2355 +#: common/models.py:2362 msgid "Id" msgstr "" -#: common/models.py:2361 templates/js/translated/news.js:35 +#: common/models.py:2368 templates/js/translated/news.js:35 msgid "Title" msgstr "" -#: common/models.py:2371 templates/js/translated/news.js:51 +#: common/models.py:2378 templates/js/translated/news.js:51 msgid "Published" msgstr "" -#: common/models.py:2376 templates/InvenTree/settings/plugin.html:62 +#: common/models.py:2383 templates/InvenTree/settings/plugin.html:62 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/news.js:47 msgid "Author" msgstr "" -#: common/models.py:2381 templates/js/translated/news.js:43 +#: common/models.py:2388 templates/js/translated/news.js:43 msgid "Summary" msgstr "" -#: common/models.py:2386 +#: common/models.py:2393 msgid "Read" msgstr "" -#: common/models.py:2387 +#: common/models.py:2394 msgid "Was this news item read?" msgstr "" -#: common/notifications.py:293 +#: common/notifications.py:294 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:295 +#: common/notifications.py:296 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:301 +#: common/notifications.py:302 msgid "Items Received" msgstr "" -#: common/notifications.py:303 +#: common/notifications.py:304 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:415 +#: common/notifications.py:416 msgid "Error raised by plugin" msgstr "" #: common/views.py:85 order/templates/order/order_wizard/po_upload.html:51 #: order/templates/order/purchase_order_detail.html:25 order/views.py:102 -#: part/views.py:107 templates/patterns/wizard/upload.html:37 +#: part/templates/part/import_wizard/part_upload.html:58 part/views.py:109 +#: templates/patterns/wizard/upload.html:37 msgid "Upload File" msgstr "Last opp fil" #: common/views.py:86 order/templates/order/order_wizard/match_fields.html:52 #: order/views.py:103 #: part/templates/part/import_wizard/ajax_match_fields.html:45 -#: part/views.py:108 templates/patterns/wizard/match_fields.html:51 +#: part/templates/part/import_wizard/match_fields.html:52 part/views.py:110 +#: templates/patterns/wizard/match_fields.html:51 msgid "Match Fields" msgstr "Sammelign felter" @@ -2934,7 +2954,9 @@ msgstr "Deler importert" #: common/views.py:509 order/templates/order/order_wizard/match_fields.html:27 #: order/templates/order/order_wizard/match_parts.html:19 #: order/templates/order/order_wizard/po_upload.html:49 +#: part/templates/part/import_wizard/match_fields.html:27 #: part/templates/part/import_wizard/match_references.html:19 +#: part/templates/part/import_wizard/part_upload.html:56 #: templates/patterns/wizard/match_fields.html:26 #: templates/patterns/wizard/upload.html:35 msgid "Previous Step" @@ -2995,7 +3017,7 @@ msgstr "" msgid "Link to external company information" msgstr "Link til ekstern bedriftsinformasjon" -#: company/models.py:140 part/models.py:878 +#: company/models.py:140 part/models.py:879 msgid "Image" msgstr "Bilde" @@ -3028,8 +3050,8 @@ msgid "Does this company manufacture parts?" msgstr "Produserer dette firmaet deler?" #: company/models.py:153 company/serializers.py:399 -#: company/templates/company/company_base.html:107 part/models.py:2762 -#: part/serializers.py:154 part/serializers.py:182 stock/serializers.py:182 +#: company/templates/company/company_base.html:107 part/models.py:2780 +#: part/serializers.py:156 part/serializers.py:184 stock/serializers.py:182 #: templates/InvenTree/settings/pricing.html:64 msgid "Currency" msgstr "Valuta" @@ -3055,12 +3077,12 @@ msgstr "" #: templates/js/translated/company.js:433 #: templates/js/translated/company.js:534 #: templates/js/translated/company.js:669 -#: templates/js/translated/company.js:957 templates/js/translated/part.js:238 +#: templates/js/translated/company.js:957 templates/js/translated/part.js:241 #: templates/js/translated/table_filters.js:439 msgid "Manufacturer" msgstr "" -#: company/models.py:269 templates/js/translated/part.js:239 +#: company/models.py:269 templates/js/translated/part.js:242 msgid "Select manufacturer" msgstr "" @@ -3070,11 +3092,11 @@ msgstr "" #: templates/js/translated/company.js:533 #: templates/js/translated/company.js:685 #: templates/js/translated/company.js:976 templates/js/translated/order.js:2286 -#: templates/js/translated/part.js:249 templates/js/translated/part.js:1067 +#: templates/js/translated/part.js:252 templates/js/translated/part.js:1338 msgid "MPN" msgstr "" -#: company/models.py:276 templates/js/translated/part.js:250 +#: company/models.py:276 templates/js/translated/part.js:253 msgid "Manufacturer Part Number" msgstr "Produsentens varenummer" @@ -3100,8 +3122,8 @@ msgstr "" #: company/models.py:370 #: report/templates/report/inventree_test_report_base.html:95 #: stock/models.py:2156 templates/js/translated/company.js:582 -#: templates/js/translated/company.js:800 templates/js/translated/part.js:889 -#: templates/js/translated/stock.js:1399 +#: templates/js/translated/company.js:800 templates/js/translated/part.js:1160 +#: templates/js/translated/stock.js:1398 msgid "Value" msgstr "" @@ -3109,10 +3131,10 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:377 part/admin.py:26 part/models.py:951 -#: part/models.py:3128 part/templates/part/part_base.html:286 -#: templates/InvenTree/settings/settings.html:349 -#: templates/js/translated/company.js:806 templates/js/translated/part.js:895 +#: company/models.py:377 part/admin.py:26 part/models.py:952 +#: part/models.py:3206 part/templates/part/part_base.html:286 +#: templates/InvenTree/settings/settings.html:350 +#: templates/js/translated/company.js:806 templates/js/translated/part.js:1166 msgid "Units" msgstr "" @@ -3132,24 +3154,24 @@ msgstr "" #: templates/js/translated/company.js:304 #: templates/js/translated/company.js:437 #: templates/js/translated/company.js:930 templates/js/translated/order.js:2017 -#: templates/js/translated/part.js:219 templates/js/translated/part.js:1035 +#: templates/js/translated/part.js:222 templates/js/translated/part.js:1306 #: templates/js/translated/pricing.js:231 #: templates/js/translated/table_filters.js:443 msgid "Supplier" msgstr "" -#: company/models.py:498 templates/js/translated/part.js:220 +#: company/models.py:498 templates/js/translated/part.js:223 msgid "Select supplier" msgstr "" #: company/models.py:503 company/templates/company/supplier_part.html:146 #: part/bom.py:253 part/bom.py:281 templates/js/translated/company.js:303 -#: templates/js/translated/order.js:2273 templates/js/translated/part.js:230 -#: templates/js/translated/part.js:1053 templates/js/translated/pricing.js:243 +#: templates/js/translated/order.js:2273 templates/js/translated/part.js:233 +#: templates/js/translated/part.js:1324 templates/js/translated/pricing.js:243 msgid "SKU" msgstr "" -#: company/models.py:504 templates/js/translated/part.js:231 +#: company/models.py:504 templates/js/translated/part.js:234 msgid "Supplier stock keeping unit" msgstr "" @@ -3166,24 +3188,25 @@ msgid "Supplier part description" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:181 -#: part/admin.py:225 part/models.py:3381 part/templates/part/upload_bom.html:59 +#: part/admin.py:258 part/models.py:3459 part/templates/part/upload_bom.html:59 +#: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:397 msgid "Note" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "base cost" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:534 company/templates/company/supplier_part.html:167 #: stock/admin.py:101 stock/models.py:682 #: stock/templates/stock/item_base.html:243 -#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2016 +#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2011 msgid "Packaging" msgstr "" @@ -3196,7 +3219,7 @@ msgstr "" #: templates/js/translated/company.js:997 templates/js/translated/order.js:826 #: templates/js/translated/order.js:1253 templates/js/translated/order.js:1508 #: templates/js/translated/order.js:2317 templates/js/translated/order.js:2334 -#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1137 +#: templates/js/translated/part.js:1356 templates/js/translated/part.js:1408 msgid "Pack Quantity" msgstr "" @@ -3204,7 +3227,7 @@ msgstr "" msgid "Unit quantity supplied in a single pack" msgstr "" -#: company/models.py:544 part/models.py:1863 +#: company/models.py:544 part/models.py:1869 msgid "multiple" msgstr "" @@ -3216,8 +3239,8 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:1118 templates/js/translated/build.js:1883 -#: templates/js/translated/build.js:2770 templates/js/translated/part.js:623 -#: templates/js/translated/part.js:626 +#: templates/js/translated/build.js:2770 templates/js/translated/part.js:626 +#: templates/js/translated/part.js:629 #: templates/js/translated/table_filters.js:206 msgid "Available" msgstr "" @@ -3300,7 +3323,7 @@ msgstr "" #: stock/templates/stock/item_base.html:399 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:429 templates/js/translated/order.js:2827 -#: templates/js/translated/stock.js:2607 +#: templates/js/translated/stock.js:2602 #: templates/js/translated/table_filters.js:447 msgid "Customer" msgstr "Kunde" @@ -3314,7 +3337,7 @@ msgid "Phone" msgstr "Telefon" #: company/templates/company/company_base.html:206 -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:525 msgid "Remove Image" msgstr "" @@ -3323,19 +3346,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:209 -#: part/templates/part/part_base.html:514 +#: part/templates/part/part_base.html:528 #: templates/InvenTree/settings/user.html:87 #: templates/InvenTree/settings/user.html:149 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:238 -#: part/templates/part/part_base.html:543 +#: part/templates/part/part_base.html:557 msgid "Upload Image" msgstr "Last opp bilde" #: company/templates/company/company_base.html:253 -#: part/templates/part/part_base.html:598 +#: part/templates/part/part_base.html:612 msgid "Download Image" msgstr "" @@ -3351,7 +3374,7 @@ msgstr "Oprett ny leverandørdel" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:357 +#: part/templates/part/detail.html:380 msgid "New Supplier Part" msgstr "Ny leverandørdel" @@ -3380,7 +3403,7 @@ msgstr "Produsentdeler" msgid "Create new manufacturer part" msgstr "Opprett ny produsentdeler" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:387 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:410 msgid "New Manufacturer Part" msgstr "Ny produsentdel" @@ -3394,9 +3417,9 @@ msgstr "Leverandør lager" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:35 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:35 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:200 -#: templates/InvenTree/settings/sidebar.html:49 +#: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:293 templates/navbar.html:50 #: users/models.py:42 msgid "Purchase Orders" @@ -3417,9 +3440,9 @@ msgstr "Ny bestillingsorder" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:39 +#: part/templates/part/detail.html:130 part/templates/part/part_sidebar.html:39 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:220 -#: templates/InvenTree/settings/sidebar.html:51 +#: templates/InvenTree/settings/sidebar.html:53 #: templates/js/translated/search.js:317 templates/navbar.html:61 #: users/models.py:43 msgid "Sales Orders" @@ -3451,7 +3474,7 @@ msgstr "Produsenter" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:221 -#: part/templates/part/detail.html:87 part/templates/part/part_base.html:85 +#: part/templates/part/detail.html:110 part/templates/part/part_base.html:85 msgid "Order part" msgstr "Bestill del" @@ -3482,28 +3505,28 @@ msgid "Suppliers" msgstr "Leverandører" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:368 +#: part/templates/part/detail.html:391 msgid "Delete supplier parts" msgstr "Slett leverandørdeler" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:369 part/templates/part/detail.html:399 -#: templates/js/translated/forms.js:455 templates/js/translated/helpers.js:38 -#: templates/js/translated/part.js:351 templates/js/translated/stock.js:188 -#: users/models.py:224 +#: part/templates/part/detail.html:392 part/templates/part/detail.html:422 +#: templates/js/translated/forms.js:458 templates/js/translated/helpers.js:38 +#: templates/js/translated/part.js:354 templates/js/translated/stock.js:187 +#: users/models.py:225 msgid "Delete" msgstr "Slett" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:184 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:207 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:189 +#: part/templates/part/detail.html:212 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:62 msgid "New Parameter" @@ -3514,7 +3537,7 @@ msgid "Delete parameters" msgstr "" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:825 +#: part/templates/part/detail.html:865 msgid "Add Parameter" msgstr "" @@ -3538,7 +3561,7 @@ msgstr "Tildelt lagervarer" #: company/templates/company/supplier_part.html:24 stock/models.py:665 #: stock/templates/stock/item_base.html:236 #: templates/js/translated/company.js:946 templates/js/translated/order.js:1173 -#: templates/js/translated/stock.js:1974 +#: templates/js/translated/stock.js:1969 msgid "Supplier Part" msgstr "Leverandør deler" @@ -3578,7 +3601,7 @@ msgstr "Handlinger for leverandørdeler" #: company/templates/company/supplier_part.html:56 #: company/templates/company/supplier_part.html:57 #: company/templates/company/supplier_part.html:222 -#: part/templates/part/detail.html:88 +#: part/templates/part/detail.html:111 msgid "Order Part" msgstr "Bestill del" @@ -3630,7 +3653,7 @@ msgstr "" #: company/templates/company/supplier_part.html:204 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:198 -#: templates/js/translated/stock.js:467 +#: templates/js/translated/stock.js:466 msgid "New Stock Item" msgstr "" @@ -3662,10 +3685,10 @@ msgstr "Oppdater tilgjengelighet" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 -#: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/part.js:777 templates/js/translated/part.js:1378 -#: templates/js/translated/part.js:1534 templates/js/translated/stock.js:994 -#: templates/js/translated/stock.js:1799 templates/navbar.html:31 +#: templates/InvenTree/settings/sidebar.html:47 +#: templates/js/translated/part.js:1048 templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1805 templates/js/translated/stock.js:993 +#: templates/js/translated/stock.js:1794 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3680,7 +3703,7 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:29 #: part/templates/part/part_sidebar.html:30 -#: templates/InvenTree/settings/sidebar.html:35 +#: templates/InvenTree/settings/sidebar.html:37 msgid "Pricing" msgstr "" @@ -3692,7 +3715,7 @@ msgstr "" #: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:155 templates/js/translated/search.js:225 -#: templates/js/translated/stock.js:2484 users/models.py:40 +#: templates/js/translated/stock.js:2479 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3801,9 +3824,9 @@ msgstr "" #: stock/templates/stock/item_base.html:182 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:619 templates/js/translated/order.js:1174 -#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1012 -#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1954 -#: templates/js/translated/stock.js:2588 +#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1283 +#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1949 +#: templates/js/translated/stock.js:2583 msgid "Purchase Order" msgstr "" @@ -3973,7 +3996,7 @@ msgstr "" #: order/models.py:1046 order/templates/order/order_base.html:178 #: templates/js/translated/order.js:1679 templates/js/translated/order.js:2404 -#: templates/js/translated/part.js:1129 templates/js/translated/part.js:1161 +#: templates/js/translated/part.js:1400 templates/js/translated/part.js:1432 #: templates/js/translated/table_filters.js:358 msgid "Received" msgstr "" @@ -3984,7 +4007,7 @@ msgstr "" #: order/models.py:1054 stock/models.py:800 stock/serializers.py:173 #: stock/templates/stock/item_base.html:189 -#: templates/js/translated/stock.js:2005 +#: templates/js/translated/stock.js:2000 msgid "Purchase Price" msgstr "" @@ -4350,18 +4373,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:9 #: part/templates/part/import_wizard/ajax_match_fields.html:9 +#: part/templates/part/import_wizard/match_fields.html:9 #: templates/patterns/wizard/match_fields.html:8 msgid "Missing selections for the following required columns" msgstr "" #: order/templates/order/order_wizard/match_fields.html:20 #: part/templates/part/import_wizard/ajax_match_fields.html:20 +#: part/templates/part/import_wizard/match_fields.html:20 #: templates/patterns/wizard/match_fields.html:19 msgid "Duplicate selections found, see below. Fix them then retry submitting." msgstr "" #: order/templates/order/order_wizard/match_fields.html:29 #: order/templates/order/order_wizard/match_parts.html:21 +#: part/templates/part/import_wizard/match_fields.html:29 #: part/templates/part/import_wizard/match_references.html:21 #: templates/patterns/wizard/match_fields.html:28 msgid "Submit Selections" @@ -4369,18 +4395,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:35 #: part/templates/part/import_wizard/ajax_match_fields.html:28 +#: part/templates/part/import_wizard/match_fields.html:35 #: templates/patterns/wizard/match_fields.html:34 msgid "File Fields" msgstr "" #: order/templates/order/order_wizard/match_fields.html:42 #: part/templates/part/import_wizard/ajax_match_fields.html:35 +#: part/templates/part/import_wizard/match_fields.html:42 #: templates/patterns/wizard/match_fields.html:41 msgid "Remove column" msgstr "" #: order/templates/order/order_wizard/match_fields.html:60 #: part/templates/part/import_wizard/ajax_match_fields.html:53 +#: part/templates/part/import_wizard/match_fields.html:60 #: templates/patterns/wizard/match_fields.html:59 msgid "Duplicate selection" msgstr "" @@ -4389,12 +4418,13 @@ msgstr "" #: order/templates/order/order_wizard/match_parts.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: 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:102 templates/js/translated/build.js:485 #: templates/js/translated/build.js:641 templates/js/translated/build.js:2088 #: templates/js/translated/order.js:1122 templates/js/translated/order.js:1624 -#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:657 -#: templates/js/translated/stock.js:825 +#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:824 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4429,6 +4459,7 @@ msgstr "" #: order/templates/order/order_wizard/po_upload.html:27 #: part/templates/part/import_wizard/ajax_part_upload.html:10 +#: part/templates/part/import_wizard/part_upload.html:26 #: templates/patterns/wizard/upload.html:13 #, python-format msgid "Step %(step)s of %(count)s" @@ -4567,12 +4598,12 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:19 part/admin.py:219 part/models.py:3262 stock/admin.py:84 +#: part/admin.py:19 part/admin.py:252 part/models.py:3340 stock/admin.py:84 #: templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/admin.py:20 part/admin.py:221 part/models.py:3266 stock/admin.py:85 +#: part/admin.py:20 part/admin.py:254 part/models.py:3344 stock/admin.py:85 msgid "Part Name" msgstr "" @@ -4580,32 +4611,32 @@ msgstr "" msgid "Part Description" msgstr "" -#: part/admin.py:22 part/models.py:852 part/templates/part/part_base.html:272 -#: templates/js/translated/part.js:763 templates/js/translated/part.js:1491 -#: templates/js/translated/stock.js:1765 +#: part/admin.py:22 part/models.py:853 part/templates/part/part_base.html:272 +#: templates/js/translated/part.js:1034 templates/js/translated/part.js:1762 +#: templates/js/translated/stock.js:1760 msgid "IPN" msgstr "" -#: part/admin.py:23 part/models.py:860 part/templates/part/part_base.html:279 -#: report/models.py:171 templates/js/translated/part.js:768 +#: part/admin.py:23 part/models.py:861 part/templates/part/part_base.html:279 +#: report/models.py:171 templates/js/translated/part.js:1039 msgid "Revision" msgstr "" -#: part/admin.py:24 part/admin.py:145 part/models.py:838 +#: part/admin.py:24 part/admin.py:178 part/models.py:839 #: part/templates/part/category.html:87 part/templates/part/part_base.html:300 msgid "Keywords" msgstr "" -#: part/admin.py:28 part/admin.py:139 +#: part/admin.py:28 part/admin.py:172 #: templates/js/translated/model_renderers.js:338 msgid "Category ID" msgstr "" -#: part/admin.py:29 part/admin.py:140 +#: part/admin.py:29 part/admin.py:173 msgid "Category Name" msgstr "" -#: part/admin.py:30 part/admin.py:144 +#: part/admin.py:30 part/admin.py:177 msgid "Default Location ID" msgstr "" @@ -4613,7 +4644,7 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:33 part/models.py:944 part/templates/part/part_base.html:206 +#: part/admin.py:33 part/models.py:945 part/templates/part/part_base.html:206 msgid "Minimum Stock" msgstr "" @@ -4625,8 +4656,8 @@ msgstr "" #: part/admin.py:48 part/bom.py:145 part/templates/part/part_base.html:213 #: templates/js/translated/bom.js:1156 templates/js/translated/build.js:1935 -#: templates/js/translated/part.js:613 templates/js/translated/part.js:633 -#: templates/js/translated/part.js:1381 templates/js/translated/part.js:1559 +#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 +#: templates/js/translated/part.js:1652 templates/js/translated/part.js:1830 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4642,115 +4673,115 @@ msgid "Allocated" msgstr "" #: part/admin.py:51 part/templates/part/part_base.html:244 -#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 -#: templates/js/translated/part.js:1385 templates/js/translated/part.js:1566 +#: templates/js/translated/part.js:619 templates/js/translated/part.js:639 +#: templates/js/translated/part.js:1656 templates/js/translated/part.js:1837 msgid "Building" msgstr "" -#: part/admin.py:52 part/models.py:2846 +#: part/admin.py:52 part/models.py:2864 msgid "Minimum Cost" msgstr "" -#: part/admin.py:53 part/models.py:2852 +#: part/admin.py:53 part/models.py:2870 msgid "Maximum Cost" msgstr "" -#: part/admin.py:142 part/admin.py:216 stock/admin.py:26 stock/admin.py:98 +#: part/admin.py:175 part/admin.py:249 stock/admin.py:26 stock/admin.py:98 msgid "Parent ID" msgstr "" -#: part/admin.py:143 part/admin.py:218 stock/admin.py:27 +#: part/admin.py:176 part/admin.py:251 stock/admin.py:27 msgid "Parent Name" msgstr "" -#: part/admin.py:146 part/templates/part/category.html:81 +#: part/admin.py:179 part/templates/part/category.html:81 #: part/templates/part/category.html:94 msgid "Category Path" msgstr "" -#: part/admin.py:149 part/models.py:382 part/templates/part/cat_link.html:3 +#: part/admin.py:182 part/models.py:383 part/templates/part/cat_link.html:3 #: part/templates/part/category.html:23 part/templates/part/category.html:134 #: part/templates/part/category.html:154 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:84 -#: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:2065 templates/js/translated/search.js:146 +#: templates/InvenTree/settings/sidebar.html:43 +#: templates/js/translated/part.js:2346 templates/js/translated/search.js:146 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" -#: part/admin.py:211 +#: part/admin.py:244 msgid "BOM Level" msgstr "" -#: part/admin.py:213 +#: part/admin.py:246 msgid "BOM Item ID" msgstr "" -#: part/admin.py:217 +#: part/admin.py:250 msgid "Parent IPN" msgstr "" -#: part/admin.py:220 part/models.py:3270 +#: part/admin.py:253 part/models.py:3348 msgid "Part IPN" msgstr "" -#: part/admin.py:226 templates/js/translated/pricing.js:91 +#: part/admin.py:259 templates/js/translated/pricing.js:91 #: templates/js/translated/pricing.js:732 msgid "Minimum Price" msgstr "" -#: part/admin.py:227 templates/js/translated/pricing.js:86 +#: part/admin.py:260 templates/js/translated/pricing.js:86 #: templates/js/translated/pricing.js:740 msgid "Maximum Price" msgstr "" -#: part/api.py:536 +#: part/api.py:538 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:556 +#: part/api.py:558 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:574 +#: part/api.py:576 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:660 +#: part/api.py:662 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:818 +#: part/api.py:820 msgid "Valid" msgstr "" -#: part/api.py:819 +#: part/api.py:821 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:825 +#: part/api.py:827 msgid "This option must be selected" msgstr "" -#: part/api.py:1265 +#: part/api.py:1281 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1269 +#: part/api.py:1285 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1284 +#: part/api.py:1300 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1315 part/api.py:1319 part/api.py:1334 part/api.py:1338 +#: part/api.py:1331 part/api.py:1335 part/api.py:1350 part/api.py:1354 msgid "This field is required" msgstr "" -#: part/bom.py:142 part/models.py:116 part/models.py:887 -#: part/templates/part/category.html:109 part/templates/part/part_base.html:360 +#: part/bom.py:142 part/models.py:116 part/models.py:888 +#: part/templates/part/category.html:109 part/templates/part/part_base.html:374 msgid "Default Location" msgstr "" @@ -4801,7 +4832,7 @@ msgstr "" msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:159 part/models.py:3211 part/templates/part/category.html:16 +#: part/models.py:159 part/models.py:3289 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -4812,423 +4843,459 @@ msgstr "" msgid "Part Categories" msgstr "" -#: part/models.py:468 +#: part/models.py:469 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:538 part/models.py:550 +#: part/models.py:539 part/models.py:551 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:640 +#: part/models.py:641 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:771 +#: part/models.py:772 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:776 +#: part/models.py:777 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:790 +#: part/models.py:791 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:808 part/models.py:3267 +#: part/models.py:809 part/models.py:3345 msgid "Part name" msgstr "" -#: part/models.py:815 +#: part/models.py:816 msgid "Is Template" msgstr "" -#: part/models.py:816 +#: part/models.py:817 msgid "Is this part a template part?" msgstr "" -#: part/models.py:826 +#: part/models.py:827 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:827 +#: part/models.py:828 msgid "Variant Of" msgstr "" -#: part/models.py:833 +#: part/models.py:834 msgid "Part description" msgstr "" -#: part/models.py:839 +#: part/models.py:840 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:846 part/models.py:2966 part/models.py:3210 +#: part/models.py:847 part/models.py:3044 part/models.py:3288 #: part/templates/part/part_base.html:263 -#: templates/InvenTree/settings/settings.html:229 +#: templates/InvenTree/settings/settings.html:230 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1513 templates/js/translated/part.js:1770 +#: templates/js/translated/part.js:1784 templates/js/translated/part.js:2051 msgid "Category" msgstr "" -#: part/models.py:847 +#: part/models.py:848 msgid "Part category" msgstr "" -#: part/models.py:853 +#: part/models.py:854 msgid "Internal Part Number" msgstr "" -#: part/models.py:859 +#: part/models.py:860 msgid "Part revision or version number" msgstr "" -#: part/models.py:885 +#: part/models.py:886 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:930 part/templates/part/part_base.html:369 +#: part/models.py:931 part/templates/part/part_base.html:383 msgid "Default Supplier" msgstr "" -#: part/models.py:931 +#: part/models.py:932 msgid "Default supplier part" msgstr "" -#: part/models.py:938 +#: part/models.py:939 msgid "Default Expiry" msgstr "" -#: part/models.py:939 +#: part/models.py:940 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:945 +#: part/models.py:946 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:952 +#: part/models.py:953 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:958 +#: part/models.py:959 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:964 +#: part/models.py:965 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:970 +#: part/models.py:971 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:975 +#: part/models.py:976 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:980 +#: part/models.py:981 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:985 +#: part/models.py:986 msgid "Is this part active?" msgstr "" -#: part/models.py:990 +#: part/models.py:991 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:992 +#: part/models.py:993 msgid "Part notes" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "BOM checksum" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:997 +#: part/models.py:998 msgid "BOM checked by" msgstr "" -#: part/models.py:999 +#: part/models.py:1000 msgid "BOM checked date" msgstr "" -#: part/models.py:1003 +#: part/models.py:1004 msgid "Creation User" msgstr "" -#: part/models.py:1863 +#: part/models.py:1010 part/templates/part/part_base.html:345 +#: stock/templates/stock/item_base.html:445 +#: templates/js/translated/part.js:1901 +msgid "Last Stocktake" +msgstr "" + +#: part/models.py:1869 msgid "Sell multiple" msgstr "" -#: part/models.py:2763 +#: part/models.py:2781 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:2768 +#: part/models.py:2786 templates/js/translated/part.js:806 msgid "Updated" msgstr "" -#: part/models.py:2769 +#: part/models.py:2787 msgid "Timestamp of last pricing update" msgstr "" -#: part/models.py:2786 +#: part/models.py:2804 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:2787 +#: part/models.py:2805 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:2792 +#: part/models.py:2810 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:2793 +#: part/models.py:2811 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:2798 +#: part/models.py:2816 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:2799 +#: part/models.py:2817 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:2804 +#: part/models.py:2822 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:2805 +#: part/models.py:2823 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:2810 +#: part/models.py:2828 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:2811 +#: part/models.py:2829 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:2816 +#: part/models.py:2834 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:2817 +#: part/models.py:2835 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:2822 +#: part/models.py:2840 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:2823 +#: part/models.py:2841 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:2828 +#: part/models.py:2846 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:2829 +#: part/models.py:2847 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:2834 +#: part/models.py:2852 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:2835 +#: part/models.py:2853 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:2840 +#: part/models.py:2858 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:2841 +#: part/models.py:2859 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:2847 +#: part/models.py:2865 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:2853 +#: part/models.py:2871 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:2858 +#: part/models.py:2876 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:2859 +#: part/models.py:2877 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:2864 +#: part/models.py:2882 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:2865 +#: part/models.py:2883 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:2870 +#: part/models.py:2888 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:2871 +#: part/models.py:2889 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:2876 +#: part/models.py:2894 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:2877 +#: part/models.py:2895 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3013 +#: part/models.py:2913 +msgid "Part for stocktake" +msgstr "" + +#: part/models.py:2920 +msgid "Total available stock at time of stocktake" +msgstr "" + +#: part/models.py:2924 part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:63 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:2043 templates/js/translated/part.js:887 +#: templates/js/translated/pricing.js:537 +#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2511 +msgid "Date" +msgstr "" + +#: part/models.py:2925 +msgid "Date stocktake was performed" +msgstr "" + +#: part/models.py:2933 +msgid "Additional notes" +msgstr "" + +#: part/models.py:2941 +msgid "User who performed this stocktake" +msgstr "" + +#: part/models.py:3091 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3030 +#: part/models.py:3108 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:3050 templates/js/translated/part.js:2116 -#: templates/js/translated/stock.js:1379 +#: part/models.py:3128 templates/js/translated/part.js:2397 +#: templates/js/translated/stock.js:1378 msgid "Test Name" msgstr "" -#: part/models.py:3051 +#: part/models.py:3129 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3056 +#: part/models.py:3134 msgid "Test Description" msgstr "" -#: part/models.py:3057 +#: part/models.py:3135 msgid "Enter description for this test" msgstr "" -#: part/models.py:3062 templates/js/translated/part.js:2125 +#: part/models.py:3140 templates/js/translated/part.js:2406 #: templates/js/translated/table_filters.js:322 msgid "Required" msgstr "" -#: part/models.py:3063 +#: part/models.py:3141 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3068 templates/js/translated/part.js:2133 +#: part/models.py:3146 templates/js/translated/part.js:2414 msgid "Requires Value" msgstr "" -#: part/models.py:3069 +#: part/models.py:3147 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3074 templates/js/translated/part.js:2140 +#: part/models.py:3152 templates/js/translated/part.js:2421 msgid "Requires Attachment" msgstr "" -#: part/models.py:3075 +#: part/models.py:3153 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3116 +#: part/models.py:3194 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3124 +#: part/models.py:3202 msgid "Parameter Name" msgstr "" -#: part/models.py:3128 +#: part/models.py:3206 msgid "Parameter Units" msgstr "" -#: part/models.py:3133 +#: part/models.py:3211 msgid "Parameter description" msgstr "" -#: part/models.py:3166 +#: part/models.py:3244 msgid "Parent Part" msgstr "" -#: part/models.py:3168 part/models.py:3216 part/models.py:3217 -#: templates/InvenTree/settings/settings.html:224 +#: part/models.py:3246 part/models.py:3294 part/models.py:3295 +#: templates/InvenTree/settings/settings.html:225 msgid "Parameter Template" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Data" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Parameter Value" msgstr "" -#: part/models.py:3221 templates/InvenTree/settings/settings.html:233 +#: part/models.py:3299 templates/InvenTree/settings/settings.html:234 msgid "Default Value" msgstr "" -#: part/models.py:3222 +#: part/models.py:3300 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3259 +#: part/models.py:3337 msgid "Part ID or part name" msgstr "" -#: part/models.py:3263 +#: part/models.py:3341 msgid "Unique part ID value" msgstr "" -#: part/models.py:3271 +#: part/models.py:3349 msgid "Part IPN value" msgstr "" -#: part/models.py:3274 +#: part/models.py:3352 msgid "Level" msgstr "" -#: part/models.py:3275 +#: part/models.py:3353 msgid "BOM level" msgstr "" -#: part/models.py:3344 +#: part/models.py:3422 msgid "Select parent part" msgstr "" -#: part/models.py:3352 +#: part/models.py:3430 msgid "Sub part" msgstr "" -#: part/models.py:3353 +#: part/models.py:3431 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:3359 +#: part/models.py:3437 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:3363 part/templates/part/upload_bom.html:58 +#: part/models.py:3441 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:933 templates/js/translated/bom.js:986 #: templates/js/translated/build.js:1868 #: templates/js/translated/table_filters.js:84 @@ -5236,189 +5303,189 @@ msgstr "" msgid "Optional" msgstr "" -#: part/models.py:3364 +#: part/models.py:3442 msgid "This BOM item is optional" msgstr "" -#: part/models.py:3369 templates/js/translated/bom.js:929 +#: part/models.py:3447 templates/js/translated/bom.js:929 #: templates/js/translated/bom.js:995 templates/js/translated/build.js:1859 #: templates/js/translated/table_filters.js:88 msgid "Consumable" msgstr "" -#: part/models.py:3370 +#: part/models.py:3448 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:3374 part/templates/part/upload_bom.html:55 +#: part/models.py:3452 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:3375 +#: part/models.py:3453 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:3378 +#: part/models.py:3456 msgid "BOM item reference" msgstr "" -#: part/models.py:3381 +#: part/models.py:3459 msgid "BOM item notes" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "Checksum" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "BOM line checksum" msgstr "" -#: part/models.py:3387 part/templates/part/upload_bom.html:57 +#: part/models.py:3465 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1012 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:108 msgid "Inherited" msgstr "" -#: part/models.py:3388 +#: part/models.py:3466 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:3393 part/templates/part/upload_bom.html:56 +#: part/models.py:3471 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1004 msgid "Allow Variants" msgstr "" -#: part/models.py:3394 +#: part/models.py:3472 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:3480 stock/models.py:558 +#: part/models.py:3558 stock/models.py:558 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:3489 part/models.py:3491 +#: part/models.py:3567 part/models.py:3569 msgid "Sub part must be specified" msgstr "" -#: part/models.py:3618 +#: part/models.py:3696 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:3639 +#: part/models.py:3717 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:3652 +#: part/models.py:3730 msgid "Parent BOM item" msgstr "" -#: part/models.py:3660 +#: part/models.py:3738 msgid "Substitute part" msgstr "" -#: part/models.py:3675 +#: part/models.py:3753 msgid "Part 1" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Part 2" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Select Related Part" msgstr "" -#: part/models.py:3697 +#: part/models.py:3775 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:3701 +#: part/models.py:3779 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:155 part/serializers.py:183 stock/serializers.py:183 +#: part/serializers.py:157 part/serializers.py:185 stock/serializers.py:183 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:543 +#: part/serializers.py:584 msgid "Update" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:585 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:854 +#: part/serializers.py:895 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:862 +#: part/serializers.py:903 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:863 +#: part/serializers.py:904 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:868 +#: part/serializers.py:909 msgid "Include Inherited" msgstr "" -#: part/serializers.py:869 +#: part/serializers.py:910 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:874 +#: part/serializers.py:915 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:875 +#: part/serializers.py:916 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:921 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:881 +#: part/serializers.py:922 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:962 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:922 +#: part/serializers.py:963 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:952 +#: part/serializers.py:993 msgid "No part column specified" msgstr "" -#: part/serializers.py:995 +#: part/serializers.py:1036 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:998 +#: part/serializers.py:1039 msgid "No matching part found" msgstr "" -#: part/serializers.py:1001 +#: part/serializers.py:1042 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1010 +#: part/serializers.py:1051 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1059 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1039 +#: part/serializers.py:1080 msgid "At least one BOM item is required" msgstr "" @@ -5450,7 +5517,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:267 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:290 msgid "BOM actions" msgstr "" @@ -5507,8 +5574,8 @@ msgstr "" msgid "New Part" msgstr "" -#: part/templates/part/category.html:169 part/templates/part/detail.html:366 -#: part/templates/part/detail.html:397 +#: part/templates/part/category.html:169 part/templates/part/detail.html:389 +#: part/templates/part/detail.html:420 msgid "Options" msgstr "Valgmuligheter" @@ -5556,7 +5623,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:404 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:407 msgid "Duplicate Part" msgstr "" @@ -5593,118 +5660,128 @@ msgstr "" msgid "Refresh" msgstr "" -#: part/templates/part/detail.html:59 +#: part/templates/part/detail.html:65 +msgid "Add stocktake information" +msgstr "" + +#: part/templates/part/detail.html:66 part/templates/part/part_sidebar.html:49 +#: stock/admin.py:107 templates/js/translated/stock.js:1905 +msgid "Stocktake" +msgstr "" + +#: part/templates/part/detail.html:82 msgid "Part Test Templates" msgstr "" -#: part/templates/part/detail.html:64 +#: part/templates/part/detail.html:87 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:144 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:141 +#: part/templates/part/detail.html:164 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:156 +#: part/templates/part/detail.html:179 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:160 +#: part/templates/part/detail.html:183 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:161 +#: part/templates/part/detail.html:184 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:188 +#: part/templates/part/detail.html:211 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:225 part/templates/part/part_sidebar.html:52 +#: part/templates/part/detail.html:248 part/templates/part/part_sidebar.html:57 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:229 part/templates/part/detail.html:230 +#: part/templates/part/detail.html:252 part/templates/part/detail.html:253 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:250 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:273 part/templates/part/part_sidebar.html:17 +#: report/templates/report/inventree_bill_of_materials_report.html:100 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:255 +#: part/templates/part/detail.html:278 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:259 templates/js/translated/bom.js:309 +#: part/templates/part/detail.html:282 templates/js/translated/bom.js:309 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:261 +#: part/templates/part/detail.html:284 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:271 +#: part/templates/part/detail.html:294 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:272 templates/js/translated/part.js:276 +#: part/templates/part/detail.html:295 templates/js/translated/part.js:279 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:273 +#: part/templates/part/detail.html:296 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:278 part/templates/part/detail.html:279 +#: part/templates/part/detail.html:301 part/templates/part/detail.html:302 #: templates/js/translated/bom.js:1268 templates/js/translated/bom.js:1269 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:292 +#: part/templates/part/detail.html:315 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:310 +#: part/templates/part/detail.html:333 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:337 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:360 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:353 +#: part/templates/part/detail.html:376 msgid "Part Suppliers" msgstr "" -#: part/templates/part/detail.html:383 +#: part/templates/part/detail.html:406 msgid "Part Manufacturers" msgstr "" -#: part/templates/part/detail.html:399 +#: part/templates/part/detail.html:422 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:696 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:704 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:796 msgid "Add Test Result Template" msgstr "" #: part/templates/part/import_wizard/ajax_part_upload.html:29 #: part/templates/part/import_wizard/part_upload.html:14 -msgid "Unsuffitient privileges." +msgid "Insufficient privileges." msgstr "" #: part/templates/part/import_wizard/part_upload.html:8 @@ -5715,6 +5792,34 @@ msgstr "" msgid "Import Parts from File" msgstr "" +#: part/templates/part/import_wizard/part_upload.html:31 +msgid "Requirements for part import" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "The part import file must contain the required named columns as provided in the " +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:89 +msgid "Download Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:92 +#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 +#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 +msgid "Format" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:93 +#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 +#: templates/js/translated/order.js:999 +msgid "Select file format" +msgstr "" + #: part/templates/part/part_app_base.html:12 msgid "Part List" msgstr "" @@ -5804,12 +5909,12 @@ msgstr "" #: templates/js/translated/company.js:660 #: templates/js/translated/company.js:921 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:677 templates/js/translated/part.js:755 +#: templates/js/translated/part.js:680 templates/js/translated/part.js:1026 msgid "Inactive" msgstr "" #: part/templates/part/part_base.html:165 -#: part/templates/part/part_base.html:666 +#: part/templates/part/part_base.html:680 msgid "Show Part Details" msgstr "" @@ -5837,38 +5942,38 @@ msgid "Minimum stock level" msgstr "" #: part/templates/part/part_base.html:330 templates/js/translated/bom.js:1032 -#: templates/js/translated/part.js:798 templates/js/translated/part.js:1604 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:1875 #: templates/js/translated/pricing.js:124 #: templates/js/translated/pricing.js:762 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:345 +#: part/templates/part/part_base.html:359 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:349 +#: part/templates/part/part_base.html:363 #: stock/templates/stock/item_base.html:331 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:449 +#: part/templates/part/part_base.html:463 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:495 +#: part/templates/part/part_base.html:509 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:512 +#: part/templates/part/part_base.html:526 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:564 +#: part/templates/part/part_base.html:578 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:660 +#: part/templates/part/part_base.html:674 msgid "Hide Part Details" msgstr "" @@ -5920,15 +6025,6 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" -#: part/templates/part/part_scheduling.html:13 -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:63 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:2043 templates/js/translated/pricing.js:537 -#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2516 -msgid "Date" -msgstr "" - #: part/templates/part/part_scheduling.html:14 msgid "Scheduled Quantity" msgstr "" @@ -5941,7 +6037,7 @@ msgstr "" msgid "Scheduling" msgstr "" -#: part/templates/part/part_sidebar.html:48 +#: part/templates/part/part_sidebar.html:53 msgid "Test Templates" msgstr "" @@ -5960,7 +6056,7 @@ msgstr "" #: part/templates/part/prices.html:25 stock/admin.py:106 #: stock/templates/stock/item_base.html:440 #: templates/js/translated/company.js:1039 -#: templates/js/translated/stock.js:1940 +#: templates/js/translated/stock.js:1935 msgid "Last Updated" msgstr "" @@ -6023,8 +6119,8 @@ msgstr "" msgid "Add Sell Price Break" msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:639 -#: templates/js/translated/part.js:1373 templates/js/translated/part.js:1375 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:1644 templates/js/translated/part.js:1646 msgid "No Stock" msgstr "" @@ -6087,27 +6183,32 @@ msgstr "" msgid "{title} v{version}" msgstr "" -#: part/views.py:109 +#: part/views.py:111 msgid "Match References" msgstr "" -#: part/views.py:354 +#: part/views.py:239 +#, python-brace-format +msgid "Can't import part {name} because there is no category assigned" +msgstr "" + +#: part/views.py:378 msgid "Part QR Code" msgstr "" -#: part/views.py:372 +#: part/views.py:396 msgid "Select Part Image" msgstr "" -#: part/views.py:398 +#: part/views.py:422 msgid "Updated part image" msgstr "" -#: part/views.py:401 +#: part/views.py:425 msgid "Part image not found" msgstr "" -#: part/views.py:493 +#: part/views.py:517 msgid "Part Pricing" msgstr "" @@ -6156,28 +6257,48 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:29 -#: plugin/builtin/integration/core_notifications.py:31 +#: plugin/builtin/integration/core_notifications.py:33 msgid "InvenTree contributors" msgstr "" -#: plugin/builtin/integration/core_notifications.py:30 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:32 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notificaton methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:37 -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:80 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:38 -#: plugin/builtin/integration/core_notifications.py:57 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:81 msgid "Allow sending of emails for event notifications" msgstr "" +#: plugin/builtin/integration/core_notifications.py:45 +msgid "Enable slack notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:46 +msgid "Allow sending of slack channel messages for event notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:51 +msgid "Slack incoming webhook url" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:52 +msgid "URL that is used to send messages to a slack channel" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:162 +msgid "Open link" +msgstr "" + #: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" @@ -6409,6 +6530,10 @@ msgstr "" msgid "Asset file description" msgstr "" +#: report/templates/report/inventree_bill_of_materials_report.html:133 +msgid "Materials needed" +msgstr "" + #: report/templates/report/inventree_build_order_base.html:146 msgid "Required For" msgstr "" @@ -6427,7 +6552,7 @@ msgstr "" #: templates/js/translated/build.js:1244 templates/js/translated/build.js:1745 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:121 templates/js/translated/order.js:3611 -#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:522 +#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:521 msgid "Serial Number" msgstr "" @@ -6459,8 +6584,9 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: stock/admin.py:87 templates/js/translated/stock.js:642 -#: templates/js/translated/stock.js:812 templates/js/translated/stock.js:2765 +#: stock/admin.py:87 templates/js/translated/part.js:749 +#: templates/js/translated/stock.js:641 templates/js/translated/stock.js:811 +#: templates/js/translated/stock.js:2760 msgid "Serial" msgstr "" @@ -6515,13 +6641,9 @@ msgstr "" msgid "Purchase Order ID" msgstr "" -#: stock/admin.py:107 templates/js/translated/stock.js:1910 -msgid "Stocktake" -msgstr "" - #: stock/admin.py:108 stock/models.py:764 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/stock.js:1924 +#: templates/js/translated/stock.js:1919 msgid "Expiry Date" msgstr "" @@ -6936,7 +7058,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2912 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2907 msgid "Install Stock Item" msgstr "" @@ -6944,7 +7066,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1561 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1560 msgid "Add Test Result" msgstr "" @@ -7117,10 +7239,6 @@ msgstr "" msgid "Stale" msgstr "" -#: stock/templates/stock/item_base.html:445 -msgid "Last Stocktake" -msgstr "" - #: stock/templates/stock/item_base.html:449 msgid "No stocktake performed" msgstr "" @@ -7394,7 +7512,8 @@ msgstr "" #: templates/InvenTree/notifications/notifications.html:10 #: templates/InvenTree/notifications/sidebar.html:5 -#: templates/InvenTree/settings/sidebar.html:17 templates/notifications.html:5 +#: templates/InvenTree/settings/sidebar.html:17 +#: templates/InvenTree/settings/sidebar.html:35 templates/notifications.html:5 msgid "Notifications" msgstr "" @@ -7475,6 +7594,14 @@ msgstr "" msgid "Open in new tab" msgstr "" +#: templates/InvenTree/settings/notifications.html:9 +msgid "Global Notification Settings" +msgstr "" + +#: templates/InvenTree/settings/notifications.html:18 +msgid "Slug" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -7492,7 +7619,7 @@ msgid "Part Parameter Templates" msgstr "" #: templates/InvenTree/settings/plugin.html:10 -#: templates/InvenTree/settings/sidebar.html:55 +#: templates/InvenTree/settings/sidebar.html:57 msgid "Plugin Settings" msgstr "" @@ -7501,7 +7628,7 @@ msgid "Changing the settings below require you to immediately restart the server msgstr "" #: templates/InvenTree/settings/plugin.html:38 -#: templates/InvenTree/settings/sidebar.html:57 +#: templates/InvenTree/settings/sidebar.html:59 msgid "Plugins" msgstr "" @@ -7669,67 +7796,67 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:117 +#: templates/InvenTree/settings/settings.html:118 msgid "Edit Plugin Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:119 +#: templates/InvenTree/settings/settings.html:120 msgid "Edit Notification Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:122 +#: templates/InvenTree/settings/settings.html:123 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:124 +#: templates/InvenTree/settings/settings.html:125 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:214 +#: templates/InvenTree/settings/settings.html:215 msgid "No category parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:236 -#: templates/InvenTree/settings/settings.html:361 -msgid "Edit Template" -msgstr "" - #: templates/InvenTree/settings/settings.html:237 #: templates/InvenTree/settings/settings.html:362 +msgid "Edit Template" +msgstr "" + +#: templates/InvenTree/settings/settings.html:238 +#: templates/InvenTree/settings/settings.html:363 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:277 +#: templates/InvenTree/settings/settings.html:278 msgid "Create Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:322 +#: templates/InvenTree/settings/settings.html:323 msgid "Delete Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:334 +#: templates/InvenTree/settings/settings.html:335 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:338 +#: templates/InvenTree/settings/settings.html:339 #: templates/js/translated/news.js:29 #: templates/js/translated/notification.js:36 msgid "ID" msgstr "" -#: templates/InvenTree/settings/settings.html:380 +#: templates/InvenTree/settings/settings.html:381 msgid "Create Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:399 +#: templates/InvenTree/settings/settings.html:400 msgid "Edit Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:413 +#: templates/InvenTree/settings/settings.html:414 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/InvenTree/settings/settings.html:421 +#: templates/InvenTree/settings/settings.html:422 msgid "Delete Part Parameter Template" msgstr "" @@ -7758,12 +7885,12 @@ msgid "Search Settings" msgstr "" #: templates/InvenTree/settings/sidebar.html:19 -#: templates/InvenTree/settings/sidebar.html:37 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Label Printing" msgstr "" #: templates/InvenTree/settings/sidebar.html:21 -#: templates/InvenTree/settings/sidebar.html:39 +#: templates/InvenTree/settings/sidebar.html:41 msgid "Reporting" msgstr "" @@ -7775,7 +7902,7 @@ msgstr "" msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:43 +#: templates/InvenTree/settings/sidebar.html:45 msgid "Categories" msgstr "" @@ -7945,64 +8072,64 @@ msgstr "" msgid "Do you really want to remove the selected email address?" msgstr "" -#: templates/InvenTree/settings/user_display.html:28 +#: templates/InvenTree/settings/user_display.html:29 msgid "Theme Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:38 +#: templates/InvenTree/settings/user_display.html:39 msgid "Select theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:49 +#: templates/InvenTree/settings/user_display.html:50 msgid "Set Theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:57 +#: templates/InvenTree/settings/user_display.html:58 msgid "Language Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:66 +#: templates/InvenTree/settings/user_display.html:67 msgid "Select language" msgstr "" -#: templates/InvenTree/settings/user_display.html:82 +#: templates/InvenTree/settings/user_display.html:83 #, python-format msgid "%(lang_translated)s%% translated" msgstr "" -#: templates/InvenTree/settings/user_display.html:84 +#: templates/InvenTree/settings/user_display.html:85 msgid "No translations available" msgstr "" -#: templates/InvenTree/settings/user_display.html:91 +#: templates/InvenTree/settings/user_display.html:92 msgid "Set Language" msgstr "" -#: templates/InvenTree/settings/user_display.html:94 +#: templates/InvenTree/settings/user_display.html:95 msgid "Some languages are not complete" msgstr "" -#: templates/InvenTree/settings/user_display.html:96 +#: templates/InvenTree/settings/user_display.html:97 msgid "Show only sufficent" msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "and hidden." msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "Show them too" msgstr "" -#: templates/InvenTree/settings/user_display.html:105 +#: templates/InvenTree/settings/user_display.html:106 msgid "Help the translation efforts!" msgstr "" -#: templates/InvenTree/settings/user_display.html:106 +#: templates/InvenTree/settings/user_display.html:107 msgid "Native language translation of the web application is community contributed via crowdin. Contributions are welcomed and encouraged." msgstr "" -#: templates/InvenTree/settings/user_display.html:107 +#: templates/InvenTree/settings/user_display.html:108 msgid "InvenTree Translation Project" msgstr "" @@ -8080,7 +8207,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:646 +#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:649 msgid "Confirm" msgstr "Bekreft" @@ -8313,7 +8440,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 -#: templates/js/translated/part.js:2445 +#: templates/js/translated/part.js:2726 msgid "Minimum Quantity" msgstr "" @@ -8466,7 +8593,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1089 +#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1088 msgid "Remove stock item" msgstr "" @@ -8548,16 +8675,6 @@ msgstr "" msgid "Download BOM Template" msgstr "" -#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 -#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 -msgid "Format" -msgstr "" - -#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 -#: templates/js/translated/order.js:999 -msgid "Select file format" -msgstr "" - #: templates/js/translated/bom.js:320 msgid "Multi Level BOM" msgstr "" @@ -8688,7 +8805,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:1145 templates/js/translated/build.js:1923 -#: templates/js/translated/part.js:790 templates/js/translated/part.js:1572 +#: templates/js/translated/part.js:1061 templates/js/translated/part.js:1843 msgid "Includes variant stock" msgstr "" @@ -8773,13 +8890,13 @@ msgstr "" msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:317 templates/js/translated/stock.js:95 -#: templates/js/translated/stock.js:237 +#: templates/js/translated/build.js:317 templates/js/translated/stock.js:94 +#: templates/js/translated/stock.js:236 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:319 templates/js/translated/stock.js:97 -#: templates/js/translated/stock.js:239 +#: templates/js/translated/build.js:319 templates/js/translated/stock.js:96 +#: templates/js/translated/stock.js:238 msgid "Latest serial number" msgstr "" @@ -8987,9 +9104,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1466 -#: templates/js/translated/part.js:2003 templates/js/translated/stock.js:1725 -#: templates/js/translated/stock.js:2428 +#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1737 +#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1724 +#: templates/js/translated/stock.js:2423 msgid "Select" msgstr "" @@ -9001,7 +9118,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2695 +#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2690 msgid "No user information" msgstr "" @@ -9074,34 +9191,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:652 -#: templates/js/translated/company.js:913 templates/js/translated/part.js:661 -#: templates/js/translated/part.js:747 +#: templates/js/translated/company.js:913 templates/js/translated/part.js:664 +#: templates/js/translated/part.js:1018 msgid "Template part" msgstr "" #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:917 templates/js/translated/part.js:665 -#: templates/js/translated/part.js:751 +#: templates/js/translated/company.js:917 templates/js/translated/part.js:668 +#: templates/js/translated/part.js:1022 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:784 templates/js/translated/part.js:870 +#: templates/js/translated/company.js:784 templates/js/translated/part.js:1141 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:821 templates/js/translated/part.js:912 +#: templates/js/translated/company.js:821 templates/js/translated/part.js:1183 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:822 templates/js/translated/part.js:913 +#: templates/js/translated/company.js:822 templates/js/translated/part.js:1184 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:841 templates/js/translated/part.js:930 +#: templates/js/translated/company.js:841 templates/js/translated/part.js:1201 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:852 templates/js/translated/part.js:942 +#: templates/js/translated/company.js:852 templates/js/translated/part.js:1213 msgid "Delete Parameter" msgstr "" @@ -9181,61 +9298,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:369 templates/js/translated/forms.js:384 -#: templates/js/translated/forms.js:398 templates/js/translated/forms.js:412 +#: templates/js/translated/forms.js:372 templates/js/translated/forms.js:387 +#: templates/js/translated/forms.js:401 templates/js/translated/forms.js:415 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:371 +#: templates/js/translated/forms.js:374 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:386 +#: templates/js/translated/forms.js:389 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:400 +#: templates/js/translated/forms.js:403 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:414 +#: templates/js/translated/forms.js:417 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:672 +#: templates/js/translated/forms.js:675 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:773 +#: templates/js/translated/forms.js:776 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1266 templates/modals.html:19 +#: templates/js/translated/forms.js:1269 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1703 +#: templates/js/translated/forms.js:1706 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1919 templates/search.html:29 +#: templates/js/translated/forms.js:1922 templates/search.html:29 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2172 +#: templates/js/translated/forms.js:2175 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:2640 +#: templates/js/translated/forms.js:2643 msgid "Select Columns" msgstr "" @@ -9256,7 +9373,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1113 +#: templates/js/translated/stock.js:1112 msgid "Select Stock Items" msgstr "" @@ -9590,7 +9707,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2184 +#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2179 msgid "Stock Status" msgstr "" @@ -9614,7 +9731,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1982 templates/js/translated/part.js:983 +#: templates/js/translated/order.js:1982 templates/js/translated/part.js:1254 msgid "No purchase orders found" msgstr "" @@ -9647,8 +9764,8 @@ msgstr "" msgid "Total" msgstr "" -#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1085 -#: templates/js/translated/part.js:1137 +#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1356 +#: templates/js/translated/part.js:1408 msgid "Total Quantity" msgstr "" @@ -9666,11 +9783,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2388 templates/js/translated/order.js:3900 -#: templates/js/translated/part.js:1121 +#: templates/js/translated/part.js:1392 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1166 +#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1437 msgid "Receive line item" msgstr "" @@ -9791,7 +9908,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3623 templates/js/translated/order.js:3712 -#: templates/js/translated/stock.js:1641 +#: templates/js/translated/stock.js:1640 msgid "Shipped to customer" msgstr "" @@ -9835,334 +9952,358 @@ msgstr "" msgid "No matching lines" msgstr "" -#: templates/js/translated/part.js:52 +#: templates/js/translated/part.js:55 msgid "Part Attributes" msgstr "" -#: templates/js/translated/part.js:56 +#: templates/js/translated/part.js:59 msgid "Part Creation Options" msgstr "" -#: templates/js/translated/part.js:60 +#: templates/js/translated/part.js:63 msgid "Part Duplication Options" msgstr "" -#: templates/js/translated/part.js:64 +#: templates/js/translated/part.js:67 msgid "Supplier Options" msgstr "" -#: templates/js/translated/part.js:78 +#: templates/js/translated/part.js:81 msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:168 +#: templates/js/translated/part.js:171 msgid "Create Initial Stock" msgstr "" -#: templates/js/translated/part.js:169 +#: templates/js/translated/part.js:172 msgid "Create an initial stock item for this part" msgstr "" -#: templates/js/translated/part.js:176 +#: templates/js/translated/part.js:179 msgid "Initial Stock Quantity" msgstr "" -#: templates/js/translated/part.js:177 +#: templates/js/translated/part.js:180 msgid "Specify initial stock quantity for this part" msgstr "" -#: templates/js/translated/part.js:184 +#: templates/js/translated/part.js:187 msgid "Select destination stock location" msgstr "" -#: templates/js/translated/part.js:202 +#: templates/js/translated/part.js:205 msgid "Copy Category Parameters" msgstr "" -#: templates/js/translated/part.js:203 +#: templates/js/translated/part.js:206 msgid "Copy parameter templates from selected part category" msgstr "" -#: templates/js/translated/part.js:211 +#: templates/js/translated/part.js:214 msgid "Add Supplier Data" msgstr "" -#: templates/js/translated/part.js:212 +#: templates/js/translated/part.js:215 msgid "Create initial supplier data for this part" msgstr "" -#: templates/js/translated/part.js:268 +#: templates/js/translated/part.js:271 msgid "Copy Image" msgstr "" -#: templates/js/translated/part.js:269 +#: templates/js/translated/part.js:272 msgid "Copy image from original part" msgstr "" -#: templates/js/translated/part.js:277 +#: templates/js/translated/part.js:280 msgid "Copy bill of materials from original part" msgstr "" -#: templates/js/translated/part.js:284 +#: templates/js/translated/part.js:287 msgid "Copy Parameters" msgstr "" -#: templates/js/translated/part.js:285 +#: templates/js/translated/part.js:288 msgid "Copy parameter data from original part" msgstr "" -#: templates/js/translated/part.js:298 +#: templates/js/translated/part.js:301 msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:313 templates/js/translated/stock.js:122 +#: templates/js/translated/part.js:316 templates/js/translated/stock.js:121 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:329 +#: templates/js/translated/part.js:332 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:342 +#: templates/js/translated/part.js:345 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:347 +#: templates/js/translated/part.js:350 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:359 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:360 +#: templates/js/translated/part.js:363 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:368 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:394 +#: templates/js/translated/part.js:397 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:396 +#: templates/js/translated/part.js:399 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:407 +#: templates/js/translated/part.js:410 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:459 +#: templates/js/translated/part.js:462 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:460 +#: templates/js/translated/part.js:463 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:477 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:476 +#: templates/js/translated/part.js:479 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:477 +#: templates/js/translated/part.js:480 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:478 +#: templates/js/translated/part.js:481 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:485 +#: templates/js/translated/part.js:488 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:521 +#: templates/js/translated/part.js:524 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:523 +#: templates/js/translated/part.js:526 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:531 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:530 +#: templates/js/translated/part.js:533 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:547 +#: templates/js/translated/part.js:550 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:560 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:560 +#: templates/js/translated/part.js:563 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:585 +#: templates/js/translated/part.js:588 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1554 +#: templates/js/translated/part.js:612 templates/js/translated/part.js:1825 #: templates/js/translated/table_filters.js:488 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:622 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:653 templates/js/translated/part.js:739 +#: templates/js/translated/part.js:656 templates/js/translated/part.js:1010 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:657 templates/js/translated/part.js:743 +#: templates/js/translated/part.js:660 templates/js/translated/part.js:1014 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:669 +#: templates/js/translated/part.js:672 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:673 +#: templates/js/translated/part.js:676 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:815 +#: templates/js/translated/part.js:761 +msgid "Stock item has not been checked recently" +msgstr "" + +#: templates/js/translated/part.js:769 +msgid "Update item" +msgstr "" + +#: templates/js/translated/part.js:770 +msgid "Delete item" +msgstr "" + +#: templates/js/translated/part.js:871 +msgid "No stocktake information available" +msgstr "" + +#: templates/js/translated/part.js:910 templates/js/translated/part.js:933 +msgid "Edit Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:914 templates/js/translated/part.js:945 +msgid "Delete Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:1086 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1236 +#: templates/js/translated/part.js:1507 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1260 +#: templates/js/translated/part.js:1531 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1327 templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1598 templates/js/translated/part.js:1936 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1521 +#: templates/js/translated/part.js:1792 msgid "No category" msgstr "" -#: templates/js/translated/part.js:1552 +#: templates/js/translated/part.js:1823 msgid "No stock" msgstr "" -#: templates/js/translated/part.js:1576 +#: templates/js/translated/part.js:1847 msgid "Allocated to build orders" msgstr "" -#: templates/js/translated/part.js:1580 +#: templates/js/translated/part.js:1851 msgid "Allocated to sales orders" msgstr "" -#: templates/js/translated/part.js:1679 templates/js/translated/part.js:1922 -#: templates/js/translated/stock.js:2387 +#: templates/js/translated/part.js:1960 templates/js/translated/part.js:2203 +#: templates/js/translated/stock.js:2382 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1695 +#: templates/js/translated/part.js:1976 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1761 +#: templates/js/translated/part.js:2042 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1766 +#: templates/js/translated/part.js:2047 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1771 +#: templates/js/translated/part.js:2052 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1784 +#: templates/js/translated/part.js:2065 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1942 templates/js/translated/stock.js:2407 +#: templates/js/translated/part.js:2223 templates/js/translated/stock.js:2402 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2022 +#: templates/js/translated/part.js:2303 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2038 +#: templates/js/translated/part.js:2319 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2383 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2153 templates/js/translated/stock.js:1338 +#: templates/js/translated/part.js:2434 templates/js/translated/stock.js:1337 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2154 templates/js/translated/stock.js:1339 -#: templates/js/translated/stock.js:1599 +#: templates/js/translated/part.js:2435 templates/js/translated/stock.js:1338 +#: templates/js/translated/stock.js:1598 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2441 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2182 +#: templates/js/translated/part.js:2463 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2196 +#: templates/js/translated/part.js:2477 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2277 templates/js/translated/part.js:2278 +#: templates/js/translated/part.js:2558 templates/js/translated/part.js:2559 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2280 +#: templates/js/translated/part.js:2561 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:2286 +#: templates/js/translated/part.js:2567 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:2336 +#: templates/js/translated/part.js:2617 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2623 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:2438 +#: templates/js/translated/part.js:2719 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2454 +#: templates/js/translated/part.js:2735 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:2499 +#: templates/js/translated/part.js:2780 msgid "Minimum Stock Level" msgstr "" @@ -10290,388 +10431,388 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:74 +#: templates/js/translated/stock.js:73 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:104 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:114 +#: templates/js/translated/stock.js:113 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:148 +#: templates/js/translated/stock.js:147 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:163 +#: templates/js/translated/stock.js:162 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:177 +#: templates/js/translated/stock.js:176 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:184 +#: templates/js/translated/stock.js:183 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:193 +#: templates/js/translated/stock.js:192 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:197 +#: templates/js/translated/stock.js:196 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:201 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:256 +#: templates/js/translated/stock.js:255 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:298 +#: templates/js/translated/stock.js:297 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:304 +#: templates/js/translated/stock.js:303 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:368 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:389 +#: templates/js/translated/stock.js:388 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:405 +#: templates/js/translated/stock.js:404 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:410 +#: templates/js/translated/stock.js:409 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:431 +#: templates/js/translated/stock.js:430 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:481 +#: templates/js/translated/stock.js:480 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:494 +#: templates/js/translated/stock.js:493 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:519 +#: templates/js/translated/stock.js:518 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:523 templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:522 templates/js/translated/stock.js:523 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:540 +#: templates/js/translated/stock.js:539 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:560 +#: templates/js/translated/stock.js:559 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:568 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:692 +#: templates/js/translated/stock.js:691 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:693 +#: templates/js/translated/stock.js:692 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:770 +#: templates/js/translated/stock.js:769 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:771 +#: templates/js/translated/stock.js:770 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:773 +#: templates/js/translated/stock.js:772 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:774 +#: templates/js/translated/stock.js:773 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:863 +#: templates/js/translated/stock.js:862 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:864 +#: templates/js/translated/stock.js:863 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:958 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:959 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:966 +#: templates/js/translated/stock.js:965 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:967 +#: templates/js/translated/stock.js:966 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:971 +#: templates/js/translated/stock.js:970 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:972 +#: templates/js/translated/stock.js:971 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:976 +#: templates/js/translated/stock.js:975 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:977 users/models.py:220 +#: templates/js/translated/stock.js:976 users/models.py:221 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:981 +#: templates/js/translated/stock.js:980 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1114 +#: templates/js/translated/stock.js:1113 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1141 +#: templates/js/translated/stock.js:1140 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1277 +#: templates/js/translated/stock.js:1276 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1279 +#: templates/js/translated/stock.js:1278 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1284 +#: templates/js/translated/stock.js:1283 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1331 +#: templates/js/translated/stock.js:1330 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1334 +#: templates/js/translated/stock.js:1333 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1360 +#: templates/js/translated/stock.js:1359 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1417 +#: templates/js/translated/stock.js:1416 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1582 +#: templates/js/translated/stock.js:1581 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1604 +#: templates/js/translated/stock.js:1603 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1633 +#: templates/js/translated/stock.js:1632 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1637 +#: templates/js/translated/stock.js:1636 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1645 +#: templates/js/translated/stock.js:1644 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1651 +#: templates/js/translated/stock.js:1650 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1820 +#: templates/js/translated/stock.js:1815 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1825 +#: templates/js/translated/stock.js:1820 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1828 +#: templates/js/translated/stock.js:1823 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1831 +#: templates/js/translated/stock.js:1826 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1833 +#: templates/js/translated/stock.js:1828 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1835 +#: templates/js/translated/stock.js:1830 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1838 +#: templates/js/translated/stock.js:1833 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1837 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1844 +#: templates/js/translated/stock.js:1839 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1846 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1853 +#: templates/js/translated/stock.js:1848 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1855 +#: templates/js/translated/stock.js:1850 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1859 +#: templates/js/translated/stock.js:1854 #: templates/js/translated/table_filters.js:216 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1989 +#: templates/js/translated/stock.js:1984 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2026 +#: templates/js/translated/stock.js:2021 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2199 +#: templates/js/translated/stock.js:2194 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2213 +#: templates/js/translated/stock.js:2208 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2214 +#: templates/js/translated/stock.js:2209 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2446 +#: templates/js/translated/stock.js:2441 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2536 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2557 +#: templates/js/translated/stock.js:2552 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2579 +#: templates/js/translated/stock.js:2574 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2598 +#: templates/js/translated/stock.js:2593 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2617 +#: templates/js/translated/stock.js:2612 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2635 +#: templates/js/translated/stock.js:2630 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2658 +#: templates/js/translated/stock.js:2653 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2666 +#: templates/js/translated/stock.js:2661 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2737 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2793 templates/js/translated/stock.js:2829 +#: templates/js/translated/stock.js:2788 templates/js/translated/stock.js:2824 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2845 +#: templates/js/translated/stock.js:2840 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2866 +#: templates/js/translated/stock.js:2861 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2867 +#: templates/js/translated/stock.js:2862 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2869 +#: templates/js/translated/stock.js:2864 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2870 +#: templates/js/translated/stock.js:2865 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:2866 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2872 +#: templates/js/translated/stock.js:2867 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2885 +#: templates/js/translated/stock.js:2880 msgid "Select part to install" msgstr "" @@ -10696,7 +10837,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:92 -#: templates/js/translated/table_filters.js:516 +#: templates/js/translated/table_filters.js:520 msgid "Has Pricing" msgstr "" @@ -10912,6 +11053,10 @@ msgstr "" msgid "Purchasable" msgstr "" +#: templates/js/translated/table_filters.js:504 +msgid "Has stocktake entries" +msgstr "" + #: templates/js/translated/tables.js:70 msgid "Display calendar view" msgstr "Vis kalender" @@ -11206,35 +11351,35 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:207 +#: users/models.py:208 msgid "Permission set" msgstr "" -#: users/models.py:215 +#: users/models.py:216 msgid "Group" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "View" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "Permission to view items" msgstr "" -#: users/models.py:220 +#: users/models.py:221 msgid "Permission to add items" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Change" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Permissions to edit items" msgstr "" -#: users/models.py:224 +#: users/models.py:225 msgid "Permission to delete items" msgstr "" diff --git a/InvenTree/locale/pl/LC_MESSAGES/django.po b/InvenTree/locale/pl/LC_MESSAGES/django.po index e2fccc058c..f4eb47d4bc 100644 --- a/InvenTree/locale/pl/LC_MESSAGES/django.po +++ b/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: 2022-12-30 20:46+0000\n" -"PO-Revision-Date: 2022-12-31 11:29\n" +"POT-Creation-Date: 2023-01-01 11:05+0000\n" +"PO-Revision-Date: 2023-01-01 11:26\n" "Last-Translator: \n" "Language-Team: Polish\n" "Language: pl_PL\n" @@ -34,7 +34,7 @@ msgstr "Wprowadź dane" #: company/templates/company/sidebar.html:25 order/models.py:943 #: order/templates/order/po_sidebar.html:11 #: order/templates/order/so_sidebar.html:17 part/admin.py:27 -#: part/templates/part/part_sidebar.html:57 +#: part/models.py:2932 part/templates/part/part_sidebar.html:62 #: report/templates/report/inventree_build_order_base.html:172 #: stock/admin.py:103 stock/models.py:2061 stock/models.py:2169 #: stock/serializers.py:321 stock/serializers.py:454 stock/serializers.py:535 @@ -44,8 +44,8 @@ msgstr "Wprowadź dane" #: templates/js/translated/company.js:1023 #: templates/js/translated/order.js:2435 templates/js/translated/order.js:2569 #: templates/js/translated/order.js:3067 templates/js/translated/order.js:4004 -#: templates/js/translated/order.js:4385 templates/js/translated/stock.js:1413 -#: templates/js/translated/stock.js:2020 +#: templates/js/translated/order.js:4385 templates/js/translated/part.js:882 +#: templates/js/translated/stock.js:1412 templates/js/translated/stock.js:2015 msgid "Notes" msgstr "Uwagi" @@ -204,18 +204,18 @@ msgstr "Załącznik" msgid "Select file to attach" msgstr "Wybierz plik do załączenia" -#: InvenTree/models.py:412 common/models.py:2366 company/models.py:129 +#: InvenTree/models.py:412 common/models.py:2373 company/models.py:129 #: company/models.py:281 company/models.py:516 order/models.py:85 -#: order/models.py:1282 part/admin.py:25 part/models.py:865 +#: order/models.py:1282 part/admin.py:25 part/models.py:866 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: stock/admin.py:102 templates/js/translated/company.js:692 #: templates/js/translated/company.js:1012 -#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1615 +#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1886 msgid "Link" msgstr "Łącze" -#: InvenTree/models.py:413 build/models.py:290 part/models.py:866 +#: InvenTree/models.py:413 build/models.py:290 part/models.py:867 #: stock/models.py:716 msgid "Link to external URL" msgstr "Link do zewnętrznego adresu URL" @@ -229,12 +229,13 @@ msgstr "Komentarz" msgid "File comment" msgstr "Komentarz pliku" -#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1810 -#: common/models.py:1811 common/models.py:2034 common/models.py:2035 -#: common/models.py:2296 common/models.py:2297 part/models.py:2948 -#: part/models.py:2968 plugin/models.py:264 plugin/models.py:265 +#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1817 +#: common/models.py:1818 common/models.py:2041 common/models.py:2042 +#: common/models.py:2303 common/models.py:2304 part/models.py:2940 +#: part/models.py:3026 part/models.py:3046 plugin/models.py:264 +#: plugin/models.py:265 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2689 +#: templates/js/translated/stock.js:2684 msgid "User" msgstr "Użytkownik" @@ -271,19 +272,20 @@ msgstr "Błąd zmiany nazwy pliku" msgid "Invalid choice" msgstr "Błędny wybór" -#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2020 -#: company/models.py:363 label/models.py:101 part/models.py:809 -#: part/models.py:3123 plugin/models.py:94 report/models.py:152 +#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2027 +#: company/models.py:363 label/models.py:101 part/models.py:810 +#: part/models.py:3201 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 +#: templates/InvenTree/settings/notifications.html:17 #: templates/InvenTree/settings/plugin.html:60 #: templates/InvenTree/settings/plugin.html:104 #: templates/InvenTree/settings/plugin_settings.html:23 -#: templates/InvenTree/settings/settings.html:344 +#: templates/InvenTree/settings/settings.html:345 #: templates/js/translated/company.js:581 #: templates/js/translated/company.js:794 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:711 templates/js/translated/part.js:880 -#: templates/js/translated/part.js:2010 templates/js/translated/stock.js:2434 +#: templates/js/translated/part.js:982 templates/js/translated/part.js:1151 +#: templates/js/translated/part.js:2291 templates/js/translated/stock.js:2429 msgid "Name" msgstr "Nazwa" @@ -292,24 +294,25 @@ msgstr "Nazwa" #: company/models.py:522 company/templates/company/company_base.html:72 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:108 label/models.py:108 -#: order/models.py:83 part/admin.py:141 part/admin.py:222 part/models.py:832 -#: part/models.py:3132 part/templates/part/category.html:75 +#: order/models.py:83 part/admin.py:174 part/admin.py:255 part/models.py:833 +#: part/models.py:3210 part/templates/part/category.html:75 #: part/templates/part/part_base.html:172 #: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/admin.py:25 stock/templates/stock/location.html:117 +#: templates/InvenTree/settings/notifications.html:19 #: templates/InvenTree/settings/plugin_settings.html:28 -#: templates/InvenTree/settings/settings.html:355 +#: templates/InvenTree/settings/settings.html:356 #: templates/js/translated/bom.js:592 templates/js/translated/bom.js:895 #: templates/js/translated/build.js:2596 templates/js/translated/company.js:445 #: templates/js/translated/company.js:703 #: templates/js/translated/company.js:987 templates/js/translated/order.js:2030 #: templates/js/translated/order.js:2267 templates/js/translated/order.js:2845 -#: templates/js/translated/part.js:773 templates/js/translated/part.js:1223 -#: templates/js/translated/part.js:1497 templates/js/translated/part.js:2046 -#: templates/js/translated/part.js:2121 templates/js/translated/stock.js:1787 -#: templates/js/translated/stock.js:2466 templates/js/translated/stock.js:2526 +#: templates/js/translated/part.js:1044 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1768 templates/js/translated/part.js:2327 +#: templates/js/translated/part.js:2402 templates/js/translated/stock.js:1782 +#: templates/js/translated/stock.js:2461 templates/js/translated/stock.js:2521 msgid "Description" msgstr "Opis" @@ -322,7 +325,7 @@ msgid "parent" msgstr "nadrzędny" #: InvenTree/models.py:580 InvenTree/models.py:581 -#: templates/js/translated/part.js:2055 templates/js/translated/stock.js:2475 +#: templates/js/translated/part.js:2336 templates/js/translated/stock.js:2470 msgid "Path" msgstr "Ścieżka" @@ -354,7 +357,7 @@ msgstr "Błąd serwera" msgid "An error has been logged by the server." msgstr "Błąd został zapisany w logach serwera." -#: InvenTree/serializers.py:58 part/models.py:3468 +#: InvenTree/serializers.py:58 part/models.py:3546 msgid "Must be a valid number" msgstr "Numer musi być prawidłowy" @@ -421,107 +424,107 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:639 +#: InvenTree/settings.py:642 msgid "Czech" msgstr "Czeski" -#: InvenTree/settings.py:640 +#: InvenTree/settings.py:643 msgid "Danish" msgstr "" -#: InvenTree/settings.py:641 +#: InvenTree/settings.py:644 msgid "German" msgstr "Niemiecki" -#: InvenTree/settings.py:642 +#: InvenTree/settings.py:645 msgid "Greek" msgstr "Grecki" -#: InvenTree/settings.py:643 +#: InvenTree/settings.py:646 msgid "English" msgstr "Angielski" -#: InvenTree/settings.py:644 +#: InvenTree/settings.py:647 msgid "Spanish" msgstr "Hiszpański" -#: InvenTree/settings.py:645 +#: InvenTree/settings.py:648 msgid "Spanish (Mexican)" msgstr "Hiszpański (Meksyk)" -#: InvenTree/settings.py:646 +#: InvenTree/settings.py:649 msgid "Farsi / Persian" msgstr "Perski" -#: InvenTree/settings.py:647 +#: InvenTree/settings.py:650 msgid "French" msgstr "Francuski" -#: InvenTree/settings.py:648 +#: InvenTree/settings.py:651 msgid "Hebrew" msgstr "Hebrajski" -#: InvenTree/settings.py:649 +#: InvenTree/settings.py:652 msgid "Hungarian" msgstr "Węgierski" -#: InvenTree/settings.py:650 +#: InvenTree/settings.py:653 msgid "Italian" msgstr "Włoski" -#: InvenTree/settings.py:651 +#: InvenTree/settings.py:654 msgid "Japanese" msgstr "Japoński" -#: InvenTree/settings.py:652 +#: InvenTree/settings.py:655 msgid "Korean" msgstr "Koreański" -#: InvenTree/settings.py:653 +#: InvenTree/settings.py:656 msgid "Dutch" msgstr "Holenderski" -#: InvenTree/settings.py:654 +#: InvenTree/settings.py:657 msgid "Norwegian" msgstr "Norweski" -#: InvenTree/settings.py:655 +#: InvenTree/settings.py:658 msgid "Polish" msgstr "Polski" -#: InvenTree/settings.py:656 +#: InvenTree/settings.py:659 msgid "Portuguese" msgstr "Portugalski" -#: InvenTree/settings.py:657 +#: InvenTree/settings.py:660 msgid "Portuguese (Brazilian)" msgstr "Portugalski (Brazylijski)" -#: InvenTree/settings.py:658 +#: InvenTree/settings.py:661 msgid "Russian" msgstr "Rosyjski" -#: InvenTree/settings.py:659 +#: InvenTree/settings.py:662 msgid "Slovenian" msgstr "" -#: InvenTree/settings.py:660 +#: InvenTree/settings.py:663 msgid "Swedish" msgstr "Szwedzki" -#: InvenTree/settings.py:661 +#: InvenTree/settings.py:664 msgid "Thai" msgstr "Tajski" -#: InvenTree/settings.py:662 +#: InvenTree/settings.py:665 msgid "Turkish" msgstr "Turecki" -#: InvenTree/settings.py:663 +#: InvenTree/settings.py:666 msgid "Vietnamese" msgstr "Wietnamski" -#: InvenTree/settings.py:664 +#: InvenTree/settings.py:667 msgid "Chinese" msgstr "Chiński" @@ -652,7 +655,7 @@ msgstr "Podziel z pozycji nadrzędnej" msgid "Split child item" msgstr "Podziel element podrzędny" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2124 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2119 msgid "Merged stock items" msgstr "Scalone przedmioty magazynowe" @@ -756,7 +759,7 @@ msgstr "Zlecenie Budowy" #: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:141 -#: templates/InvenTree/settings/sidebar.html:47 +#: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:254 users/models.py:41 msgid "Build Orders" msgstr "Zlecenia budowy" @@ -766,8 +769,9 @@ msgid "Build Order Reference" msgstr "Odwołanie do zamówienia wykonania" #: build/models.py:155 order/models.py:241 order/models.py:651 -#: order/models.py:941 part/admin.py:224 part/models.py:3378 +#: order/models.py:941 part/admin.py:257 part/models.py:3456 #: part/templates/part/upload_bom.html:54 +#: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 #: templates/js/translated/bom.js:729 templates/js/translated/bom.js:905 @@ -793,13 +797,15 @@ msgstr "Zamówienie budowy, do którego budowa jest przypisana" #: build/models.py:180 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:684 #: order/models.py:1038 order/models.py:1149 order/models.py:1150 -#: part/models.py:381 part/models.py:2781 part/models.py:2894 -#: part/models.py:2909 part/models.py:2928 part/models.py:2946 -#: part/models.py:3045 part/models.py:3166 part/models.py:3258 -#: part/models.py:3343 part/models.py:3659 part/serializers.py:853 -#: part/templates/part/part_app_base.html:8 +#: part/models.py:382 part/models.py:2799 part/models.py:2912 +#: part/models.py:2972 part/models.py:2987 part/models.py:3006 +#: part/models.py:3024 part/models.py:3123 part/models.py:3244 +#: part/models.py:3336 part/models.py:3421 part/models.py:3737 +#: part/serializers.py:894 part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 +#: report/templates/report/inventree_bill_of_materials_report.html:110 +#: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_base.html:109 #: report/templates/report/inventree_po_report.html:89 #: report/templates/report/inventree_so_report.html:90 stock/serializers.py:90 @@ -819,12 +825,12 @@ msgstr "Zamówienie budowy, do którego budowa jest przypisana" #: templates/js/translated/order.js:1172 templates/js/translated/order.js:1676 #: templates/js/translated/order.js:2252 templates/js/translated/order.js:3199 #: templates/js/translated/order.js:3595 templates/js/translated/order.js:3825 -#: templates/js/translated/part.js:1208 templates/js/translated/part.js:1280 -#: templates/js/translated/part.js:1474 templates/js/translated/pricing.js:102 -#: templates/js/translated/stock.js:618 templates/js/translated/stock.js:783 -#: templates/js/translated/stock.js:993 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2552 templates/js/translated/stock.js:2747 -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/part.js:1479 templates/js/translated/part.js:1551 +#: templates/js/translated/part.js:1745 templates/js/translated/pricing.js:102 +#: templates/js/translated/stock.js:617 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:992 templates/js/translated/stock.js:1738 +#: templates/js/translated/stock.js:2547 templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2879 msgid "Part" msgstr "Komponent" @@ -890,7 +896,7 @@ msgstr "Kod partii" msgid "Batch code for this build output" msgstr "Kod partii dla wyjścia budowy" -#: build/models.py:252 order/models.py:87 part/models.py:1001 +#: build/models.py:252 order/models.py:87 part/models.py:1002 #: part/templates/part/part_base.html:318 templates/js/translated/order.js:2858 msgid "Creation Date" msgstr "Data utworzenia" @@ -923,7 +929,7 @@ msgstr "Użytkownik, który wydał to zamówienie" #: build/models.py:283 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:101 #: order/templates/order/order_base.html:185 -#: order/templates/order/sales_order_base.html:183 part/models.py:1005 +#: order/templates/order/sales_order_base.html:183 part/models.py:1006 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2658 templates/js/translated/order.js:2064 msgid "Responsible" @@ -936,7 +942,7 @@ msgstr "Użytkownik odpowiedzialny za to zamówienie budowy" #: build/models.py:289 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:188 -#: part/templates/part/part_base.html:376 stock/models.py:714 +#: part/templates/part/part_base.html:390 stock/models.py:714 #: stock/templates/stock/item_base.html:203 msgid "External Link" msgstr "Link Zewnętrzny" @@ -1011,8 +1017,8 @@ msgstr "" #: templates/js/translated/order.js:107 templates/js/translated/order.js:3200 #: templates/js/translated/order.js:3502 templates/js/translated/order.js:3507 #: templates/js/translated/order.js:3602 templates/js/translated/order.js:3694 -#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 -#: templates/js/translated/stock.js:2625 +#: templates/js/translated/part.js:803 templates/js/translated/stock.js:618 +#: templates/js/translated/stock.js:783 templates/js/translated/stock.js:2620 msgid "Stock Item" msgstr "Element magazynowy" @@ -1022,12 +1028,13 @@ msgstr "Lokalizacja magazynowania przedmiotu" #: build/models.py:1364 build/serializers.py:192 #: build/templates/build/build_base.html:85 -#: build/templates/build/detail.html:34 common/models.py:1842 +#: build/templates/build/detail.html:34 common/models.py:1849 #: order/models.py:934 order/models.py:1460 order/serializers.py:1206 -#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:223 -#: part/forms.py:40 part/models.py:3359 +#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:256 +#: part/forms.py:40 part/models.py:2919 part/models.py:3437 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 +#: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_base.html:113 #: report/templates/report/inventree_po_report.html:90 #: report/templates/report/inventree_so_report.html:91 @@ -1049,13 +1056,14 @@ msgstr "Lokalizacja magazynowania przedmiotu" #: templates/js/translated/order.js:3201 templates/js/translated/order.js:3521 #: templates/js/translated/order.js:3608 templates/js/translated/order.js:3700 #: templates/js/translated/order.js:3847 templates/js/translated/order.js:4338 -#: templates/js/translated/part.js:1078 templates/js/translated/part.js:2568 +#: templates/js/translated/part.js:805 templates/js/translated/part.js:876 +#: templates/js/translated/part.js:1349 templates/js/translated/part.js:2849 #: templates/js/translated/pricing.js:114 #: templates/js/translated/pricing.js:207 #: templates/js/translated/pricing.js:255 -#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:490 -#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:814 -#: templates/js/translated/stock.js:2674 templates/js/translated/stock.js:2759 +#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:489 +#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:813 +#: templates/js/translated/stock.js:2669 templates/js/translated/stock.js:2754 msgid "Quantity" msgstr "Ilość" @@ -1097,8 +1105,8 @@ msgid "Enter quantity for build output" msgstr "" #: build/serializers.py:207 build/serializers.py:683 order/models.py:327 -#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:645 -#: part/serializers.py:1016 stock/models.py:574 stock/models.py:1312 +#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:686 +#: part/serializers.py:1057 stock/models.py:574 stock/models.py:1312 #: stock/serializers.py:294 msgid "Quantity must be greater than zero" msgstr "Ilość musi być większa niż zero" @@ -1113,7 +1121,7 @@ msgstr "" #: build/serializers.py:231 order/serializers.py:463 order/serializers.py:1210 #: stock/serializers.py:303 templates/js/translated/order.js:1545 -#: templates/js/translated/stock.js:303 templates/js/translated/stock.js:491 +#: templates/js/translated/stock.js:302 templates/js/translated/stock.js:490 msgid "Serial Numbers" msgstr "Numer seryjny" @@ -1146,9 +1154,10 @@ msgstr "" #: templates/js/translated/build.js:1759 templates/js/translated/order.js:1572 #: templates/js/translated/order.js:3514 templates/js/translated/order.js:3619 #: templates/js/translated/order.js:3627 templates/js/translated/order.js:3708 -#: templates/js/translated/part.js:183 templates/js/translated/stock.js:620 -#: templates/js/translated/stock.js:785 templates/js/translated/stock.js:995 -#: templates/js/translated/stock.js:1895 templates/js/translated/stock.js:2566 +#: templates/js/translated/part.js:186 templates/js/translated/part.js:804 +#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 +#: templates/js/translated/stock.js:994 templates/js/translated/stock.js:1890 +#: templates/js/translated/stock.js:2561 msgid "Location" msgstr "Lokalizacja" @@ -1162,8 +1171,8 @@ msgstr "" #: stock/templates/stock/item_base.html:421 #: templates/js/translated/barcode.js:237 templates/js/translated/build.js:2630 #: templates/js/translated/order.js:1681 templates/js/translated/order.js:2034 -#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1870 -#: templates/js/translated/stock.js:2643 templates/js/translated/stock.js:2775 +#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:2638 templates/js/translated/stock.js:2770 msgid "Status" msgstr "Status" @@ -1239,8 +1248,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:595 build/serializers.py:640 part/models.py:3495 -#: part/models.py:3651 +#: build/serializers.py:595 build/serializers.py:640 part/models.py:3573 +#: part/models.py:3729 msgid "BOM Item" msgstr "Element BOM" @@ -1406,7 +1415,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2670 templates/js/translated/order.js:2051 #: templates/js/translated/order.js:2382 templates/js/translated/order.js:2866 -#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1093 +#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1364 msgid "Target Date" msgstr "Data docelowa" @@ -1484,8 +1493,8 @@ msgstr "" #: stock/templates/stock/item_base.html:168 #: templates/js/translated/build.js:1250 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:1884 -#: templates/js/translated/stock.js:2782 +#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:1879 +#: templates/js/translated/stock.js:2777 #: templates/js/translated/table_filters.js:179 #: templates/js/translated/table_filters.js:270 msgid "Batch" @@ -1617,8 +1626,8 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:86 #: order/templates/order/sales_order_detail.html:140 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:210 -#: part/templates/part/part_sidebar.html:55 stock/templates/stock/item.html:117 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:233 +#: part/templates/part/part_sidebar.html:60 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" msgstr "Załączniki" @@ -1635,7 +1644,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:316 +#: build/templates/build/index.html:18 part/templates/part/detail.html:339 msgid "New Build Order" msgstr "Nowe zlecenie budowy" @@ -1928,9 +1937,9 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1014 part/admin.py:41 part/models.py:3168 +#: common/models.py:1014 part/admin.py:41 part/models.py:3246 #: report/models.py:158 templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:504 +#: templates/js/translated/table_filters.js:508 msgid "Template" msgstr "Szablon" @@ -1938,7 +1947,7 @@ msgstr "Szablon" msgid "Parts are templates by default" msgstr "" -#: common/models.py:1021 part/admin.py:37 part/admin.py:229 part/models.py:957 +#: common/models.py:1021 part/admin.py:37 part/admin.py:262 part/models.py:958 #: templates/js/translated/bom.js:1595 #: templates/js/translated/table_filters.js:196 #: templates/js/translated/table_filters.js:467 @@ -1949,7 +1958,7 @@ msgstr "Złożenie" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1028 part/admin.py:38 part/models.py:963 +#: common/models.py:1028 part/admin.py:38 part/models.py:964 #: templates/js/translated/table_filters.js:475 msgid "Component" msgstr "Komponent" @@ -1958,7 +1967,7 @@ msgstr "Komponent" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1035 part/admin.py:39 part/models.py:974 +#: common/models.py:1035 part/admin.py:39 part/models.py:975 msgid "Purchaseable" msgstr "Możliwość zakupu" @@ -1966,7 +1975,7 @@ msgstr "Możliwość zakupu" msgid "Parts are purchaseable by default" msgstr "Części są domyślnie z możliwością zakupu" -#: common/models.py:1042 part/admin.py:40 part/models.py:979 +#: common/models.py:1042 part/admin.py:40 part/models.py:980 #: templates/js/translated/table_filters.js:496 msgid "Salable" msgstr "Możliwość sprzedaży" @@ -1975,10 +1984,10 @@ msgstr "Możliwość sprzedaży" msgid "Parts are salable by default" msgstr "Części są domyślnie z możliwością sprzedaży" -#: common/models.py:1049 part/admin.py:42 part/models.py:969 +#: common/models.py:1049 part/admin.py:42 part/models.py:970 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:120 -#: templates/js/translated/table_filters.js:508 +#: templates/js/translated/table_filters.js:512 msgid "Trackable" msgstr "Możliwość śledzenia" @@ -1986,10 +1995,10 @@ msgstr "Możliwość śledzenia" msgid "Parts are trackable by default" msgstr "Części są domyślnie z możliwością śledzenia" -#: common/models.py:1056 part/admin.py:43 part/models.py:989 +#: common/models.py:1056 part/admin.py:43 part/models.py:990 #: part/templates/part/part_base.html:156 #: templates/js/translated/table_filters.js:42 -#: templates/js/translated/table_filters.js:512 +#: templates/js/translated/table_filters.js:516 msgid "Virtual" msgstr "Wirtualny" @@ -2417,7 +2426,7 @@ msgstr "" msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1461 common/models.py:1803 +#: common/models.py:1461 common/models.py:1810 msgid "Settings key (must be unique - case insensitive" msgstr "Klucz ustawień (musi być unikalny - niewrażliwy na wielkość liter" @@ -2749,41 +2758,50 @@ msgstr "Planowanie komponentów" msgid "Display part scheduling information" msgstr "" -#: common/models.py:1778 -msgid "Table String Length" +#: common/models.py:1778 part/templates/part/detail.html:61 +#: templates/js/translated/part.js:822 +msgid "Part Stocktake" msgstr "" #: common/models.py:1779 +msgid "Display part stocktake information" +msgstr "" + +#: common/models.py:1785 +msgid "Table String Length" +msgstr "" + +#: common/models.py:1786 msgid "Maximimum length limit for strings displayed in table views" msgstr "" -#: common/models.py:1843 +#: common/models.py:1850 msgid "Price break quantity" msgstr "" -#: common/models.py:1850 company/serializers.py:393 order/models.py:975 -#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1145 +#: common/models.py:1857 company/serializers.py:393 order/models.py:975 +#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1416 #: templates/js/translated/pricing.js:354 msgid "Price" msgstr "Cena" -#: common/models.py:1851 +#: common/models.py:1858 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2011 common/models.py:2189 +#: common/models.py:2018 common/models.py:2196 msgid "Endpoint" msgstr "Punkt końcowy" -#: common/models.py:2012 +#: common/models.py:2019 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2021 +#: common/models.py:2028 msgid "Name for this webhook" msgstr "" -#: common/models.py:2026 part/admin.py:36 part/models.py:984 +#: common/models.py:2033 part/admin.py:36 part/models.py:985 #: plugin/models.py:100 templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:116 #: templates/js/translated/table_filters.js:336 @@ -2791,131 +2809,133 @@ msgstr "" msgid "Active" msgstr "Aktywny" -#: common/models.py:2027 +#: common/models.py:2034 msgid "Is this webhook active" msgstr "" -#: common/models.py:2041 +#: common/models.py:2048 msgid "Token" msgstr "" -#: common/models.py:2042 +#: common/models.py:2049 msgid "Token for access" msgstr "" -#: common/models.py:2049 +#: common/models.py:2056 msgid "Secret" msgstr "Sekret" -#: common/models.py:2050 +#: common/models.py:2057 msgid "Shared secret for HMAC" msgstr "Współdzielony sekret dla HMAC" -#: common/models.py:2156 +#: common/models.py:2163 msgid "Message ID" msgstr "Id wiadomości" -#: common/models.py:2157 +#: common/models.py:2164 msgid "Unique identifier for this message" msgstr "Unikalny identyfikator dla tej wiadomości" -#: common/models.py:2165 +#: common/models.py:2172 msgid "Host" msgstr "" -#: common/models.py:2166 +#: common/models.py:2173 msgid "Host from which this message was received" msgstr "Host, od którego otrzymano tę wiadomość" -#: common/models.py:2173 +#: common/models.py:2180 msgid "Header" msgstr "Nagłówek" -#: common/models.py:2174 +#: common/models.py:2181 msgid "Header of this message" msgstr "Nagłówek tej wiadomości" -#: common/models.py:2180 +#: common/models.py:2187 msgid "Body" msgstr "Zawartość" -#: common/models.py:2181 +#: common/models.py:2188 msgid "Body of this message" msgstr "" -#: common/models.py:2190 +#: common/models.py:2197 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2195 +#: common/models.py:2202 msgid "Worked on" msgstr "" -#: common/models.py:2196 +#: common/models.py:2203 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2355 +#: common/models.py:2362 msgid "Id" msgstr "" -#: common/models.py:2361 templates/js/translated/news.js:35 +#: common/models.py:2368 templates/js/translated/news.js:35 msgid "Title" msgstr "" -#: common/models.py:2371 templates/js/translated/news.js:51 +#: common/models.py:2378 templates/js/translated/news.js:51 msgid "Published" msgstr "" -#: common/models.py:2376 templates/InvenTree/settings/plugin.html:62 +#: common/models.py:2383 templates/InvenTree/settings/plugin.html:62 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/news.js:47 msgid "Author" msgstr "Autor" -#: common/models.py:2381 templates/js/translated/news.js:43 +#: common/models.py:2388 templates/js/translated/news.js:43 msgid "Summary" msgstr "" -#: common/models.py:2386 +#: common/models.py:2393 msgid "Read" msgstr "" -#: common/models.py:2387 +#: common/models.py:2394 msgid "Was this news item read?" msgstr "" -#: common/notifications.py:293 +#: common/notifications.py:294 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:295 +#: common/notifications.py:296 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:301 +#: common/notifications.py:302 msgid "Items Received" msgstr "" -#: common/notifications.py:303 +#: common/notifications.py:304 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:415 +#: common/notifications.py:416 msgid "Error raised by plugin" msgstr "" #: common/views.py:85 order/templates/order/order_wizard/po_upload.html:51 #: order/templates/order/purchase_order_detail.html:25 order/views.py:102 -#: part/views.py:107 templates/patterns/wizard/upload.html:37 +#: part/templates/part/import_wizard/part_upload.html:58 part/views.py:109 +#: templates/patterns/wizard/upload.html:37 msgid "Upload File" msgstr "Wyślij plik" #: common/views.py:86 order/templates/order/order_wizard/match_fields.html:52 #: order/views.py:103 #: part/templates/part/import_wizard/ajax_match_fields.html:45 -#: part/views.py:108 templates/patterns/wizard/match_fields.html:51 +#: part/templates/part/import_wizard/match_fields.html:52 part/views.py:110 +#: templates/patterns/wizard/match_fields.html:51 msgid "Match Fields" msgstr "" @@ -2934,7 +2954,9 @@ msgstr "" #: common/views.py:509 order/templates/order/order_wizard/match_fields.html:27 #: order/templates/order/order_wizard/match_parts.html:19 #: order/templates/order/order_wizard/po_upload.html:49 +#: part/templates/part/import_wizard/match_fields.html:27 #: part/templates/part/import_wizard/match_references.html:19 +#: part/templates/part/import_wizard/part_upload.html:56 #: templates/patterns/wizard/match_fields.html:26 #: templates/patterns/wizard/upload.html:35 msgid "Previous Step" @@ -2995,7 +3017,7 @@ msgstr "Punkt kontaktowy" msgid "Link to external company information" msgstr "Link do informacji o zewnętrznym przedsiębiorstwie" -#: company/models.py:140 part/models.py:878 +#: company/models.py:140 part/models.py:879 msgid "Image" msgstr "Obraz" @@ -3028,8 +3050,8 @@ msgid "Does this company manufacture parts?" msgstr "Czy to przedsiębiorstwo produkuje części?" #: company/models.py:153 company/serializers.py:399 -#: company/templates/company/company_base.html:107 part/models.py:2762 -#: part/serializers.py:154 part/serializers.py:182 stock/serializers.py:182 +#: company/templates/company/company_base.html:107 part/models.py:2780 +#: part/serializers.py:156 part/serializers.py:184 stock/serializers.py:182 #: templates/InvenTree/settings/pricing.html:64 msgid "Currency" msgstr "Waluta" @@ -3055,12 +3077,12 @@ msgstr "Wybierz część" #: templates/js/translated/company.js:433 #: templates/js/translated/company.js:534 #: templates/js/translated/company.js:669 -#: templates/js/translated/company.js:957 templates/js/translated/part.js:238 +#: templates/js/translated/company.js:957 templates/js/translated/part.js:241 #: templates/js/translated/table_filters.js:439 msgid "Manufacturer" msgstr "Producent" -#: company/models.py:269 templates/js/translated/part.js:239 +#: company/models.py:269 templates/js/translated/part.js:242 msgid "Select manufacturer" msgstr "Wybierz producenta" @@ -3070,11 +3092,11 @@ msgstr "Wybierz producenta" #: templates/js/translated/company.js:533 #: templates/js/translated/company.js:685 #: templates/js/translated/company.js:976 templates/js/translated/order.js:2286 -#: templates/js/translated/part.js:249 templates/js/translated/part.js:1067 +#: templates/js/translated/part.js:252 templates/js/translated/part.js:1338 msgid "MPN" msgstr "" -#: company/models.py:276 templates/js/translated/part.js:250 +#: company/models.py:276 templates/js/translated/part.js:253 msgid "Manufacturer Part Number" msgstr "Numer producenta komponentu" @@ -3100,8 +3122,8 @@ msgstr "" #: company/models.py:370 #: report/templates/report/inventree_test_report_base.html:95 #: stock/models.py:2156 templates/js/translated/company.js:582 -#: templates/js/translated/company.js:800 templates/js/translated/part.js:889 -#: templates/js/translated/stock.js:1399 +#: templates/js/translated/company.js:800 templates/js/translated/part.js:1160 +#: templates/js/translated/stock.js:1398 msgid "Value" msgstr "Wartość" @@ -3109,10 +3131,10 @@ msgstr "Wartość" msgid "Parameter value" msgstr "" -#: company/models.py:377 part/admin.py:26 part/models.py:951 -#: part/models.py:3128 part/templates/part/part_base.html:286 -#: templates/InvenTree/settings/settings.html:349 -#: templates/js/translated/company.js:806 templates/js/translated/part.js:895 +#: company/models.py:377 part/admin.py:26 part/models.py:952 +#: part/models.py:3206 part/templates/part/part_base.html:286 +#: templates/InvenTree/settings/settings.html:350 +#: templates/js/translated/company.js:806 templates/js/translated/part.js:1166 msgid "Units" msgstr "Jednostki" @@ -3132,24 +3154,24 @@ msgstr "" #: templates/js/translated/company.js:304 #: templates/js/translated/company.js:437 #: templates/js/translated/company.js:930 templates/js/translated/order.js:2017 -#: templates/js/translated/part.js:219 templates/js/translated/part.js:1035 +#: templates/js/translated/part.js:222 templates/js/translated/part.js:1306 #: templates/js/translated/pricing.js:231 #: templates/js/translated/table_filters.js:443 msgid "Supplier" msgstr "Dostawca" -#: company/models.py:498 templates/js/translated/part.js:220 +#: company/models.py:498 templates/js/translated/part.js:223 msgid "Select supplier" msgstr "Wybierz dostawcę" #: company/models.py:503 company/templates/company/supplier_part.html:146 #: part/bom.py:253 part/bom.py:281 templates/js/translated/company.js:303 -#: templates/js/translated/order.js:2273 templates/js/translated/part.js:230 -#: templates/js/translated/part.js:1053 templates/js/translated/pricing.js:243 +#: templates/js/translated/order.js:2273 templates/js/translated/part.js:233 +#: templates/js/translated/part.js:1324 templates/js/translated/pricing.js:243 msgid "SKU" msgstr "" -#: company/models.py:504 templates/js/translated/part.js:231 +#: company/models.py:504 templates/js/translated/part.js:234 msgid "Supplier stock keeping unit" msgstr "" @@ -3166,24 +3188,25 @@ msgid "Supplier part description" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:181 -#: part/admin.py:225 part/models.py:3381 part/templates/part/upload_bom.html:59 +#: part/admin.py:258 part/models.py:3459 part/templates/part/upload_bom.html:59 +#: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:397 msgid "Note" msgstr "Uwaga" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "base cost" msgstr "koszt podstawowy" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:534 company/templates/company/supplier_part.html:167 #: stock/admin.py:101 stock/models.py:682 #: stock/templates/stock/item_base.html:243 -#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2016 +#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2011 msgid "Packaging" msgstr "Opakowanie" @@ -3196,7 +3219,7 @@ msgstr "Opakowanie części" #: templates/js/translated/company.js:997 templates/js/translated/order.js:826 #: templates/js/translated/order.js:1253 templates/js/translated/order.js:1508 #: templates/js/translated/order.js:2317 templates/js/translated/order.js:2334 -#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1137 +#: templates/js/translated/part.js:1356 templates/js/translated/part.js:1408 msgid "Pack Quantity" msgstr "" @@ -3204,7 +3227,7 @@ msgstr "" msgid "Unit quantity supplied in a single pack" msgstr "" -#: company/models.py:544 part/models.py:1863 +#: company/models.py:544 part/models.py:1869 msgid "multiple" msgstr "wielokrotność" @@ -3216,8 +3239,8 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:1118 templates/js/translated/build.js:1883 -#: templates/js/translated/build.js:2770 templates/js/translated/part.js:623 -#: templates/js/translated/part.js:626 +#: templates/js/translated/build.js:2770 templates/js/translated/part.js:626 +#: templates/js/translated/part.js:629 #: templates/js/translated/table_filters.js:206 msgid "Available" msgstr "Dostępne" @@ -3300,7 +3323,7 @@ msgstr "" #: stock/templates/stock/item_base.html:399 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:429 templates/js/translated/order.js:2827 -#: templates/js/translated/stock.js:2607 +#: templates/js/translated/stock.js:2602 #: templates/js/translated/table_filters.js:447 msgid "Customer" msgstr "Klient" @@ -3314,7 +3337,7 @@ msgid "Phone" msgstr "Telefon" #: company/templates/company/company_base.html:206 -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:525 msgid "Remove Image" msgstr "" @@ -3323,19 +3346,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:209 -#: part/templates/part/part_base.html:514 +#: part/templates/part/part_base.html:528 #: templates/InvenTree/settings/user.html:87 #: templates/InvenTree/settings/user.html:149 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:238 -#: part/templates/part/part_base.html:543 +#: part/templates/part/part_base.html:557 msgid "Upload Image" msgstr "Załaduj obrazek" #: company/templates/company/company_base.html:253 -#: part/templates/part/part_base.html:598 +#: part/templates/part/part_base.html:612 msgid "Download Image" msgstr "Pobierz obraz" @@ -3351,7 +3374,7 @@ msgstr "Utwórz nowego dostawcę części" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:357 +#: part/templates/part/detail.html:380 msgid "New Supplier Part" msgstr "Nowy dostawca części" @@ -3380,7 +3403,7 @@ msgstr "Części producenta" msgid "Create new manufacturer part" msgstr "Utwórz nową część producenta" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:387 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:410 msgid "New Manufacturer Part" msgstr "Nowa część producenta" @@ -3394,9 +3417,9 @@ msgstr "Zapasy dostawcy" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:35 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:35 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:200 -#: templates/InvenTree/settings/sidebar.html:49 +#: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:293 templates/navbar.html:50 #: users/models.py:42 msgid "Purchase Orders" @@ -3417,9 +3440,9 @@ msgstr "Nowe zamówienie zakupu" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:39 +#: part/templates/part/detail.html:130 part/templates/part/part_sidebar.html:39 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:220 -#: templates/InvenTree/settings/sidebar.html:51 +#: templates/InvenTree/settings/sidebar.html:53 #: templates/js/translated/search.js:317 templates/navbar.html:61 #: users/models.py:43 msgid "Sales Orders" @@ -3451,7 +3474,7 @@ msgstr "Producenci" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:221 -#: part/templates/part/detail.html:87 part/templates/part/part_base.html:85 +#: part/templates/part/detail.html:110 part/templates/part/part_base.html:85 msgid "Order part" msgstr "Zamów komponent" @@ -3482,28 +3505,28 @@ msgid "Suppliers" msgstr "Dostawcy" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:368 +#: part/templates/part/detail.html:391 msgid "Delete supplier parts" msgstr "" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:369 part/templates/part/detail.html:399 -#: templates/js/translated/forms.js:455 templates/js/translated/helpers.js:38 -#: templates/js/translated/part.js:351 templates/js/translated/stock.js:188 -#: users/models.py:224 +#: part/templates/part/detail.html:392 part/templates/part/detail.html:422 +#: templates/js/translated/forms.js:458 templates/js/translated/helpers.js:38 +#: templates/js/translated/part.js:354 templates/js/translated/stock.js:187 +#: users/models.py:225 msgid "Delete" msgstr "Usuń" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:184 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:207 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "Parametry" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:189 +#: part/templates/part/detail.html:212 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:62 msgid "New Parameter" @@ -3514,7 +3537,7 @@ msgid "Delete parameters" msgstr "Usuń parametry" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:825 +#: part/templates/part/detail.html:865 msgid "Add Parameter" msgstr "Dodaj parametr" @@ -3538,7 +3561,7 @@ msgstr "" #: company/templates/company/supplier_part.html:24 stock/models.py:665 #: stock/templates/stock/item_base.html:236 #: templates/js/translated/company.js:946 templates/js/translated/order.js:1173 -#: templates/js/translated/stock.js:1974 +#: templates/js/translated/stock.js:1969 msgid "Supplier Part" msgstr "" @@ -3578,7 +3601,7 @@ msgstr "" #: company/templates/company/supplier_part.html:56 #: company/templates/company/supplier_part.html:57 #: company/templates/company/supplier_part.html:222 -#: part/templates/part/detail.html:88 +#: part/templates/part/detail.html:111 msgid "Order Part" msgstr "Zamów komponent" @@ -3630,7 +3653,7 @@ msgstr "Utwórz nowy towar" #: company/templates/company/supplier_part.html:204 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:198 -#: templates/js/translated/stock.js:467 +#: templates/js/translated/stock.js:466 msgid "New Stock Item" msgstr "Nowy towar" @@ -3662,10 +3685,10 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 -#: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/part.js:777 templates/js/translated/part.js:1378 -#: templates/js/translated/part.js:1534 templates/js/translated/stock.js:994 -#: templates/js/translated/stock.js:1799 templates/navbar.html:31 +#: templates/InvenTree/settings/sidebar.html:47 +#: templates/js/translated/part.js:1048 templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1805 templates/js/translated/stock.js:993 +#: templates/js/translated/stock.js:1794 templates/navbar.html:31 msgid "Stock" msgstr "Stan" @@ -3680,7 +3703,7 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:29 #: part/templates/part/part_sidebar.html:30 -#: templates/InvenTree/settings/sidebar.html:35 +#: templates/InvenTree/settings/sidebar.html:37 msgid "Pricing" msgstr "Cennik" @@ -3692,7 +3715,7 @@ msgstr "Cennik" #: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:155 templates/js/translated/search.js:225 -#: templates/js/translated/stock.js:2484 users/models.py:40 +#: templates/js/translated/stock.js:2479 users/models.py:40 msgid "Stock Items" msgstr "Towary" @@ -3801,9 +3824,9 @@ msgstr "" #: stock/templates/stock/item_base.html:182 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:619 templates/js/translated/order.js:1174 -#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1012 -#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1954 -#: templates/js/translated/stock.js:2588 +#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1283 +#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1949 +#: templates/js/translated/stock.js:2583 msgid "Purchase Order" msgstr "Zlecenie zakupu" @@ -3973,7 +3996,7 @@ msgstr "" #: order/models.py:1046 order/templates/order/order_base.html:178 #: templates/js/translated/order.js:1679 templates/js/translated/order.js:2404 -#: templates/js/translated/part.js:1129 templates/js/translated/part.js:1161 +#: templates/js/translated/part.js:1400 templates/js/translated/part.js:1432 #: templates/js/translated/table_filters.js:358 msgid "Received" msgstr "Odebrane" @@ -3984,7 +4007,7 @@ msgstr "" #: order/models.py:1054 stock/models.py:800 stock/serializers.py:173 #: stock/templates/stock/item_base.html:189 -#: templates/js/translated/stock.js:2005 +#: templates/js/translated/stock.js:2000 msgid "Purchase Price" msgstr "Cena zakupu" @@ -4350,18 +4373,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:9 #: part/templates/part/import_wizard/ajax_match_fields.html:9 +#: part/templates/part/import_wizard/match_fields.html:9 #: templates/patterns/wizard/match_fields.html:8 msgid "Missing selections for the following required columns" msgstr "" #: order/templates/order/order_wizard/match_fields.html:20 #: part/templates/part/import_wizard/ajax_match_fields.html:20 +#: part/templates/part/import_wizard/match_fields.html:20 #: templates/patterns/wizard/match_fields.html:19 msgid "Duplicate selections found, see below. Fix them then retry submitting." msgstr "" #: order/templates/order/order_wizard/match_fields.html:29 #: order/templates/order/order_wizard/match_parts.html:21 +#: part/templates/part/import_wizard/match_fields.html:29 #: part/templates/part/import_wizard/match_references.html:21 #: templates/patterns/wizard/match_fields.html:28 msgid "Submit Selections" @@ -4369,18 +4395,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:35 #: part/templates/part/import_wizard/ajax_match_fields.html:28 +#: part/templates/part/import_wizard/match_fields.html:35 #: templates/patterns/wizard/match_fields.html:34 msgid "File Fields" msgstr "" #: order/templates/order/order_wizard/match_fields.html:42 #: part/templates/part/import_wizard/ajax_match_fields.html:35 +#: part/templates/part/import_wizard/match_fields.html:42 #: templates/patterns/wizard/match_fields.html:41 msgid "Remove column" msgstr "Usuń kolumnę" #: order/templates/order/order_wizard/match_fields.html:60 #: part/templates/part/import_wizard/ajax_match_fields.html:53 +#: part/templates/part/import_wizard/match_fields.html:60 #: templates/patterns/wizard/match_fields.html:59 msgid "Duplicate selection" msgstr "Duplikuj wybrane" @@ -4389,12 +4418,13 @@ msgstr "Duplikuj wybrane" #: order/templates/order/order_wizard/match_parts.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: 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:102 templates/js/translated/build.js:485 #: templates/js/translated/build.js:641 templates/js/translated/build.js:2088 #: templates/js/translated/order.js:1122 templates/js/translated/order.js:1624 -#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:657 -#: templates/js/translated/stock.js:825 +#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:824 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "Usuń wiersz" @@ -4429,6 +4459,7 @@ msgstr "" #: order/templates/order/order_wizard/po_upload.html:27 #: part/templates/part/import_wizard/ajax_part_upload.html:10 +#: part/templates/part/import_wizard/part_upload.html:26 #: templates/patterns/wizard/upload.html:13 #, python-format msgid "Step %(step)s of %(count)s" @@ -4567,12 +4598,12 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:19 part/admin.py:219 part/models.py:3262 stock/admin.py:84 +#: part/admin.py:19 part/admin.py:252 part/models.py:3340 stock/admin.py:84 #: templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "ID komponentu" -#: part/admin.py:20 part/admin.py:221 part/models.py:3266 stock/admin.py:85 +#: part/admin.py:20 part/admin.py:254 part/models.py:3344 stock/admin.py:85 msgid "Part Name" msgstr "Nazwa komponentu" @@ -4580,32 +4611,32 @@ msgstr "Nazwa komponentu" msgid "Part Description" msgstr "" -#: part/admin.py:22 part/models.py:852 part/templates/part/part_base.html:272 -#: templates/js/translated/part.js:763 templates/js/translated/part.js:1491 -#: templates/js/translated/stock.js:1765 +#: part/admin.py:22 part/models.py:853 part/templates/part/part_base.html:272 +#: templates/js/translated/part.js:1034 templates/js/translated/part.js:1762 +#: templates/js/translated/stock.js:1760 msgid "IPN" msgstr "" -#: part/admin.py:23 part/models.py:860 part/templates/part/part_base.html:279 -#: report/models.py:171 templates/js/translated/part.js:768 +#: part/admin.py:23 part/models.py:861 part/templates/part/part_base.html:279 +#: report/models.py:171 templates/js/translated/part.js:1039 msgid "Revision" msgstr "Wersja" -#: part/admin.py:24 part/admin.py:145 part/models.py:838 +#: part/admin.py:24 part/admin.py:178 part/models.py:839 #: part/templates/part/category.html:87 part/templates/part/part_base.html:300 msgid "Keywords" msgstr "Słowa kluczowe" -#: part/admin.py:28 part/admin.py:139 +#: part/admin.py:28 part/admin.py:172 #: templates/js/translated/model_renderers.js:338 msgid "Category ID" msgstr "ID kategorii" -#: part/admin.py:29 part/admin.py:140 +#: part/admin.py:29 part/admin.py:173 msgid "Category Name" msgstr "" -#: part/admin.py:30 part/admin.py:144 +#: part/admin.py:30 part/admin.py:177 msgid "Default Location ID" msgstr "" @@ -4613,7 +4644,7 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:33 part/models.py:944 part/templates/part/part_base.html:206 +#: part/admin.py:33 part/models.py:945 part/templates/part/part_base.html:206 msgid "Minimum Stock" msgstr "Minimalny stan magazynowy" @@ -4625,8 +4656,8 @@ msgstr "Na stanie" #: part/admin.py:48 part/bom.py:145 part/templates/part/part_base.html:213 #: templates/js/translated/bom.js:1156 templates/js/translated/build.js:1935 -#: templates/js/translated/part.js:613 templates/js/translated/part.js:633 -#: templates/js/translated/part.js:1381 templates/js/translated/part.js:1559 +#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 +#: templates/js/translated/part.js:1652 templates/js/translated/part.js:1830 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "W Zamówieniu" @@ -4642,115 +4673,115 @@ msgid "Allocated" msgstr "Przydzielono" #: part/admin.py:51 part/templates/part/part_base.html:244 -#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 -#: templates/js/translated/part.js:1385 templates/js/translated/part.js:1566 +#: templates/js/translated/part.js:619 templates/js/translated/part.js:639 +#: templates/js/translated/part.js:1656 templates/js/translated/part.js:1837 msgid "Building" msgstr "" -#: part/admin.py:52 part/models.py:2846 +#: part/admin.py:52 part/models.py:2864 msgid "Minimum Cost" msgstr "" -#: part/admin.py:53 part/models.py:2852 +#: part/admin.py:53 part/models.py:2870 msgid "Maximum Cost" msgstr "" -#: part/admin.py:142 part/admin.py:216 stock/admin.py:26 stock/admin.py:98 +#: part/admin.py:175 part/admin.py:249 stock/admin.py:26 stock/admin.py:98 msgid "Parent ID" msgstr "" -#: part/admin.py:143 part/admin.py:218 stock/admin.py:27 +#: part/admin.py:176 part/admin.py:251 stock/admin.py:27 msgid "Parent Name" msgstr "" -#: part/admin.py:146 part/templates/part/category.html:81 +#: part/admin.py:179 part/templates/part/category.html:81 #: part/templates/part/category.html:94 msgid "Category Path" msgstr "Ścieżka kategorii" -#: part/admin.py:149 part/models.py:382 part/templates/part/cat_link.html:3 +#: part/admin.py:182 part/models.py:383 part/templates/part/cat_link.html:3 #: part/templates/part/category.html:23 part/templates/part/category.html:134 #: part/templates/part/category.html:154 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:84 -#: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:2065 templates/js/translated/search.js:146 +#: templates/InvenTree/settings/sidebar.html:43 +#: templates/js/translated/part.js:2346 templates/js/translated/search.js:146 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "Części" -#: part/admin.py:211 +#: part/admin.py:244 msgid "BOM Level" msgstr "" -#: part/admin.py:213 +#: part/admin.py:246 msgid "BOM Item ID" msgstr "" -#: part/admin.py:217 +#: part/admin.py:250 msgid "Parent IPN" msgstr "" -#: part/admin.py:220 part/models.py:3270 +#: part/admin.py:253 part/models.py:3348 msgid "Part IPN" msgstr "IPN komponentu" -#: part/admin.py:226 templates/js/translated/pricing.js:91 +#: part/admin.py:259 templates/js/translated/pricing.js:91 #: templates/js/translated/pricing.js:732 msgid "Minimum Price" msgstr "" -#: part/admin.py:227 templates/js/translated/pricing.js:86 +#: part/admin.py:260 templates/js/translated/pricing.js:86 #: templates/js/translated/pricing.js:740 msgid "Maximum Price" msgstr "" -#: part/api.py:536 +#: part/api.py:538 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:556 +#: part/api.py:558 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:574 +#: part/api.py:576 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:660 +#: part/api.py:662 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:818 +#: part/api.py:820 msgid "Valid" msgstr "Ważny" -#: part/api.py:819 +#: part/api.py:821 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:825 +#: part/api.py:827 msgid "This option must be selected" msgstr "Ta opcja musi być zaznaczona" -#: part/api.py:1265 +#: part/api.py:1281 msgid "Must be greater than zero" msgstr "Musi być większe niż zero" -#: part/api.py:1269 +#: part/api.py:1285 msgid "Must be a valid quantity" msgstr "Musi być prawidłową ilością" -#: part/api.py:1284 +#: part/api.py:1300 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1315 part/api.py:1319 part/api.py:1334 part/api.py:1338 +#: part/api.py:1331 part/api.py:1335 part/api.py:1350 part/api.py:1354 msgid "This field is required" msgstr "To pole jest wymagane" -#: part/bom.py:142 part/models.py:116 part/models.py:887 -#: part/templates/part/category.html:109 part/templates/part/part_base.html:360 +#: part/bom.py:142 part/models.py:116 part/models.py:888 +#: part/templates/part/category.html:109 part/templates/part/part_base.html:374 msgid "Default Location" msgstr "Domyślna lokalizacja" @@ -4801,7 +4832,7 @@ msgstr "" msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:159 part/models.py:3211 part/templates/part/category.html:16 +#: part/models.py:159 part/models.py:3289 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "Kategoria komponentu" @@ -4812,423 +4843,459 @@ msgstr "Kategoria komponentu" msgid "Part Categories" msgstr "Kategorie części" -#: part/models.py:468 +#: part/models.py:469 msgid "Invalid choice for parent part" msgstr "Nieprawidłowy wybór dla części nadrzędnej" -#: part/models.py:538 part/models.py:550 +#: part/models.py:539 part/models.py:551 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "Część '{p1}' jest używana w BOM dla '{p2}' (rekursywne)" -#: part/models.py:640 +#: part/models.py:641 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:771 +#: part/models.py:772 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:776 +#: part/models.py:777 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:790 +#: part/models.py:791 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:808 part/models.py:3267 +#: part/models.py:809 part/models.py:3345 msgid "Part name" msgstr "Nazwa komponentu" -#: part/models.py:815 +#: part/models.py:816 msgid "Is Template" msgstr "Czy szablon" -#: part/models.py:816 +#: part/models.py:817 msgid "Is this part a template part?" msgstr "Czy ta część stanowi szablon części?" -#: part/models.py:826 +#: part/models.py:827 msgid "Is this part a variant of another part?" msgstr "Czy ta część jest wariantem innej części?" -#: part/models.py:827 +#: part/models.py:828 msgid "Variant Of" msgstr "Wariant" -#: part/models.py:833 +#: part/models.py:834 msgid "Part description" msgstr "Opis komponentu" -#: part/models.py:839 +#: part/models.py:840 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:846 part/models.py:2966 part/models.py:3210 +#: part/models.py:847 part/models.py:3044 part/models.py:3288 #: part/templates/part/part_base.html:263 -#: templates/InvenTree/settings/settings.html:229 +#: templates/InvenTree/settings/settings.html:230 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1513 templates/js/translated/part.js:1770 +#: templates/js/translated/part.js:1784 templates/js/translated/part.js:2051 msgid "Category" msgstr "Kategoria" -#: part/models.py:847 +#: part/models.py:848 msgid "Part category" msgstr "" -#: part/models.py:853 +#: part/models.py:854 msgid "Internal Part Number" msgstr "" -#: part/models.py:859 +#: part/models.py:860 msgid "Part revision or version number" msgstr "" -#: part/models.py:885 +#: part/models.py:886 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:930 part/templates/part/part_base.html:369 +#: part/models.py:931 part/templates/part/part_base.html:383 msgid "Default Supplier" msgstr "" -#: part/models.py:931 +#: part/models.py:932 msgid "Default supplier part" msgstr "" -#: part/models.py:938 +#: part/models.py:939 msgid "Default Expiry" msgstr "Domyślne wygasanie" -#: part/models.py:939 +#: part/models.py:940 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:945 +#: part/models.py:946 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:952 +#: part/models.py:953 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:958 +#: part/models.py:959 msgid "Can this part be built from other parts?" msgstr "Czy ten komponent może być zbudowany z innych komponentów?" -#: part/models.py:964 +#: part/models.py:965 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:970 +#: part/models.py:971 msgid "Does this part have tracking for unique items?" msgstr "Czy ta część wymaga śledzenia każdego towaru z osobna?" -#: part/models.py:975 +#: part/models.py:976 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:980 +#: part/models.py:981 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:985 +#: part/models.py:986 msgid "Is this part active?" msgstr "Czy ta część jest aktywna?" -#: part/models.py:990 +#: part/models.py:991 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:992 +#: part/models.py:993 msgid "Part notes" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "BOM checksum" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:997 +#: part/models.py:998 msgid "BOM checked by" msgstr "" -#: part/models.py:999 +#: part/models.py:1000 msgid "BOM checked date" msgstr "" -#: part/models.py:1003 +#: part/models.py:1004 msgid "Creation User" msgstr "Tworzenie użytkownika" -#: part/models.py:1863 +#: part/models.py:1010 part/templates/part/part_base.html:345 +#: stock/templates/stock/item_base.html:445 +#: templates/js/translated/part.js:1901 +msgid "Last Stocktake" +msgstr "Ostatnia inwentaryzacja" + +#: part/models.py:1869 msgid "Sell multiple" msgstr "Sprzedaj wiele" -#: part/models.py:2763 +#: part/models.py:2781 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:2768 +#: part/models.py:2786 templates/js/translated/part.js:806 msgid "Updated" msgstr "" -#: part/models.py:2769 +#: part/models.py:2787 msgid "Timestamp of last pricing update" msgstr "" -#: part/models.py:2786 +#: part/models.py:2804 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:2787 +#: part/models.py:2805 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:2792 +#: part/models.py:2810 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:2793 +#: part/models.py:2811 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:2798 +#: part/models.py:2816 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:2799 +#: part/models.py:2817 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:2804 +#: part/models.py:2822 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:2805 +#: part/models.py:2823 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:2810 +#: part/models.py:2828 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:2811 +#: part/models.py:2829 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:2816 +#: part/models.py:2834 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:2817 +#: part/models.py:2835 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:2822 +#: part/models.py:2840 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:2823 +#: part/models.py:2841 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:2828 +#: part/models.py:2846 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:2829 +#: part/models.py:2847 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:2834 +#: part/models.py:2852 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:2835 +#: part/models.py:2853 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:2840 +#: part/models.py:2858 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:2841 +#: part/models.py:2859 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:2847 +#: part/models.py:2865 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:2853 +#: part/models.py:2871 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:2858 +#: part/models.py:2876 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:2859 +#: part/models.py:2877 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:2864 +#: part/models.py:2882 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:2865 +#: part/models.py:2883 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:2870 +#: part/models.py:2888 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:2871 +#: part/models.py:2889 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:2876 +#: part/models.py:2894 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:2877 +#: part/models.py:2895 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3013 +#: part/models.py:2913 +msgid "Part for stocktake" +msgstr "" + +#: part/models.py:2920 +msgid "Total available stock at time of stocktake" +msgstr "" + +#: part/models.py:2924 part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:63 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:2043 templates/js/translated/part.js:887 +#: templates/js/translated/pricing.js:537 +#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2511 +msgid "Date" +msgstr "Data" + +#: part/models.py:2925 +msgid "Date stocktake was performed" +msgstr "" + +#: part/models.py:2933 +msgid "Additional notes" +msgstr "" + +#: part/models.py:2941 +msgid "User who performed this stocktake" +msgstr "" + +#: part/models.py:3091 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3030 +#: part/models.py:3108 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:3050 templates/js/translated/part.js:2116 -#: templates/js/translated/stock.js:1379 +#: part/models.py:3128 templates/js/translated/part.js:2397 +#: templates/js/translated/stock.js:1378 msgid "Test Name" msgstr "Nazwa testu" -#: part/models.py:3051 +#: part/models.py:3129 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3056 +#: part/models.py:3134 msgid "Test Description" msgstr "Testowy opis" -#: part/models.py:3057 +#: part/models.py:3135 msgid "Enter description for this test" msgstr "Wprowadź opis do tego testu" -#: part/models.py:3062 templates/js/translated/part.js:2125 +#: part/models.py:3140 templates/js/translated/part.js:2406 #: templates/js/translated/table_filters.js:322 msgid "Required" msgstr "Wymagane" -#: part/models.py:3063 +#: part/models.py:3141 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3068 templates/js/translated/part.js:2133 +#: part/models.py:3146 templates/js/translated/part.js:2414 msgid "Requires Value" msgstr "Wymaga wartości" -#: part/models.py:3069 +#: part/models.py:3147 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3074 templates/js/translated/part.js:2140 +#: part/models.py:3152 templates/js/translated/part.js:2421 msgid "Requires Attachment" msgstr "Wymaga załącznika" -#: part/models.py:3075 +#: part/models.py:3153 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3116 +#: part/models.py:3194 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3124 +#: part/models.py:3202 msgid "Parameter Name" msgstr "" -#: part/models.py:3128 +#: part/models.py:3206 msgid "Parameter Units" msgstr "" -#: part/models.py:3133 +#: part/models.py:3211 msgid "Parameter description" msgstr "" -#: part/models.py:3166 +#: part/models.py:3244 msgid "Parent Part" msgstr "Część nadrzędna" -#: part/models.py:3168 part/models.py:3216 part/models.py:3217 -#: templates/InvenTree/settings/settings.html:224 +#: part/models.py:3246 part/models.py:3294 part/models.py:3295 +#: templates/InvenTree/settings/settings.html:225 msgid "Parameter Template" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Data" msgstr "Dane" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Parameter Value" msgstr "Wartość parametru" -#: part/models.py:3221 templates/InvenTree/settings/settings.html:233 +#: part/models.py:3299 templates/InvenTree/settings/settings.html:234 msgid "Default Value" msgstr "Wartość domyślna" -#: part/models.py:3222 +#: part/models.py:3300 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3259 +#: part/models.py:3337 msgid "Part ID or part name" msgstr "" -#: part/models.py:3263 +#: part/models.py:3341 msgid "Unique part ID value" msgstr "Unikalny wartość ID komponentu" -#: part/models.py:3271 +#: part/models.py:3349 msgid "Part IPN value" msgstr "Wartość IPN części" -#: part/models.py:3274 +#: part/models.py:3352 msgid "Level" msgstr "Poziom" -#: part/models.py:3275 +#: part/models.py:3353 msgid "BOM level" msgstr "" -#: part/models.py:3344 +#: part/models.py:3422 msgid "Select parent part" msgstr "Wybierz część nadrzędną" -#: part/models.py:3352 +#: part/models.py:3430 msgid "Sub part" msgstr "Podczęść" -#: part/models.py:3353 +#: part/models.py:3431 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:3359 +#: part/models.py:3437 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:3363 part/templates/part/upload_bom.html:58 +#: part/models.py:3441 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:933 templates/js/translated/bom.js:986 #: templates/js/translated/build.js:1868 #: templates/js/translated/table_filters.js:84 @@ -5236,189 +5303,189 @@ msgstr "" msgid "Optional" msgstr "Opcjonalne" -#: part/models.py:3364 +#: part/models.py:3442 msgid "This BOM item is optional" msgstr "Ten element BOM jest opcjonalny" -#: part/models.py:3369 templates/js/translated/bom.js:929 +#: part/models.py:3447 templates/js/translated/bom.js:929 #: templates/js/translated/bom.js:995 templates/js/translated/build.js:1859 #: templates/js/translated/table_filters.js:88 msgid "Consumable" msgstr "" -#: part/models.py:3370 +#: part/models.py:3448 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:3374 part/templates/part/upload_bom.html:55 +#: part/models.py:3452 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:3375 +#: part/models.py:3453 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:3378 +#: part/models.py:3456 msgid "BOM item reference" msgstr "" -#: part/models.py:3381 +#: part/models.py:3459 msgid "BOM item notes" msgstr "Notatki pozycji BOM" -#: part/models.py:3383 +#: part/models.py:3461 msgid "Checksum" msgstr "Suma kontrolna" -#: part/models.py:3383 +#: part/models.py:3461 msgid "BOM line checksum" msgstr "" -#: part/models.py:3387 part/templates/part/upload_bom.html:57 +#: part/models.py:3465 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1012 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:108 msgid "Inherited" msgstr "Dziedziczone" -#: part/models.py:3388 +#: part/models.py:3466 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:3393 part/templates/part/upload_bom.html:56 +#: part/models.py:3471 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1004 msgid "Allow Variants" msgstr "Zezwalaj na warianty" -#: part/models.py:3394 +#: part/models.py:3472 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:3480 stock/models.py:558 +#: part/models.py:3558 stock/models.py:558 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:3489 part/models.py:3491 +#: part/models.py:3567 part/models.py:3569 msgid "Sub part must be specified" msgstr "" -#: part/models.py:3618 +#: part/models.py:3696 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:3639 +#: part/models.py:3717 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:3652 +#: part/models.py:3730 msgid "Parent BOM item" msgstr "" -#: part/models.py:3660 +#: part/models.py:3738 msgid "Substitute part" msgstr "Część zastępcza" -#: part/models.py:3675 +#: part/models.py:3753 msgid "Part 1" msgstr "Część 1" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Part 2" msgstr "Część 2" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Select Related Part" msgstr "Wybierz powiązaną część" -#: part/models.py:3697 +#: part/models.py:3775 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:3701 +#: part/models.py:3779 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:155 part/serializers.py:183 stock/serializers.py:183 +#: part/serializers.py:157 part/serializers.py:185 stock/serializers.py:183 msgid "Purchase currency of this stock item" msgstr "Waluta zakupu tego towaru" -#: part/serializers.py:543 +#: part/serializers.py:584 msgid "Update" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:585 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:854 +#: part/serializers.py:895 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:862 +#: part/serializers.py:903 msgid "Remove Existing Data" msgstr "Usuń istniejące dane" -#: part/serializers.py:863 +#: part/serializers.py:904 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:868 +#: part/serializers.py:909 msgid "Include Inherited" msgstr "" -#: part/serializers.py:869 +#: part/serializers.py:910 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:874 +#: part/serializers.py:915 msgid "Skip Invalid Rows" msgstr "Pomiń nieprawidłowe wiersze" -#: part/serializers.py:875 +#: part/serializers.py:916 msgid "Enable this option to skip invalid rows" msgstr "Włącz tę opcję, aby pominąć nieprawidłowe wiersze" -#: part/serializers.py:880 +#: part/serializers.py:921 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:881 +#: part/serializers.py:922 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:962 msgid "Clear Existing BOM" msgstr "Wyczyść istniejący BOM" -#: part/serializers.py:922 +#: part/serializers.py:963 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:952 +#: part/serializers.py:993 msgid "No part column specified" msgstr "" -#: part/serializers.py:995 +#: part/serializers.py:1036 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:998 +#: part/serializers.py:1039 msgid "No matching part found" msgstr "" -#: part/serializers.py:1001 +#: part/serializers.py:1042 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1010 +#: part/serializers.py:1051 msgid "Quantity not provided" msgstr "Nie podano ilości" -#: part/serializers.py:1018 +#: part/serializers.py:1059 msgid "Invalid quantity" msgstr "Nieprawidłowa ilość" -#: part/serializers.py:1039 +#: part/serializers.py:1080 msgid "At least one BOM item is required" msgstr "" @@ -5450,7 +5517,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:267 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:290 msgid "BOM actions" msgstr "" @@ -5507,8 +5574,8 @@ msgstr "Utwórz nową część" msgid "New Part" msgstr "Nowy komponent" -#: part/templates/part/category.html:169 part/templates/part/detail.html:366 -#: part/templates/part/detail.html:397 +#: part/templates/part/category.html:169 part/templates/part/detail.html:389 +#: part/templates/part/detail.html:420 msgid "Options" msgstr "Opcje" @@ -5556,7 +5623,7 @@ msgstr "Część utworzona pomyślnie" msgid "Import Parts" msgstr "Importuj Części" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:404 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:407 msgid "Duplicate Part" msgstr "Duplikuj część" @@ -5593,119 +5660,129 @@ msgstr "" msgid "Refresh" msgstr "Odśwież" -#: part/templates/part/detail.html:59 +#: part/templates/part/detail.html:65 +msgid "Add stocktake information" +msgstr "" + +#: part/templates/part/detail.html:66 part/templates/part/part_sidebar.html:49 +#: stock/admin.py:107 templates/js/translated/stock.js:1905 +msgid "Stocktake" +msgstr "" + +#: part/templates/part/detail.html:82 msgid "Part Test Templates" msgstr "" -#: part/templates/part/detail.html:64 +#: part/templates/part/detail.html:87 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:144 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:141 +#: part/templates/part/detail.html:164 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:156 +#: part/templates/part/detail.html:179 msgid "Part Variants" msgstr "Warianty Części" -#: part/templates/part/detail.html:160 +#: part/templates/part/detail.html:183 msgid "Create new variant" msgstr "Utwórz nowy wariant" -#: part/templates/part/detail.html:161 +#: part/templates/part/detail.html:184 msgid "New Variant" msgstr "Nowy wariant" -#: part/templates/part/detail.html:188 +#: part/templates/part/detail.html:211 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:225 part/templates/part/part_sidebar.html:52 +#: part/templates/part/detail.html:248 part/templates/part/part_sidebar.html:57 msgid "Related Parts" msgstr "Powiązane części" -#: part/templates/part/detail.html:229 part/templates/part/detail.html:230 +#: part/templates/part/detail.html:252 part/templates/part/detail.html:253 msgid "Add Related" msgstr "Dodaj powiązane" -#: part/templates/part/detail.html:250 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:273 part/templates/part/part_sidebar.html:17 +#: report/templates/report/inventree_bill_of_materials_report.html:100 msgid "Bill of Materials" msgstr "Zestawienie materiałowe" -#: part/templates/part/detail.html:255 +#: part/templates/part/detail.html:278 msgid "Export actions" msgstr "Akcje eksportu" -#: part/templates/part/detail.html:259 templates/js/translated/bom.js:309 +#: part/templates/part/detail.html:282 templates/js/translated/bom.js:309 msgid "Export BOM" msgstr "Eksportuj BOM" -#: part/templates/part/detail.html:261 +#: part/templates/part/detail.html:284 msgid "Print BOM Report" msgstr "Drukuj raport BOM" -#: part/templates/part/detail.html:271 +#: part/templates/part/detail.html:294 msgid "Upload BOM" msgstr "Wgraj BOM" -#: part/templates/part/detail.html:272 templates/js/translated/part.js:276 +#: part/templates/part/detail.html:295 templates/js/translated/part.js:279 msgid "Copy BOM" msgstr "Kopiuj BOM" -#: part/templates/part/detail.html:273 +#: part/templates/part/detail.html:296 msgid "Validate BOM" msgstr "Weryfikuj BOM" -#: part/templates/part/detail.html:278 part/templates/part/detail.html:279 +#: part/templates/part/detail.html:301 part/templates/part/detail.html:302 #: templates/js/translated/bom.js:1268 templates/js/translated/bom.js:1269 msgid "Add BOM Item" msgstr "Dodaj część do BOM" -#: part/templates/part/detail.html:292 +#: part/templates/part/detail.html:315 msgid "Assemblies" msgstr "Złożenia" -#: part/templates/part/detail.html:310 +#: part/templates/part/detail.html:333 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:337 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:360 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:353 +#: part/templates/part/detail.html:376 msgid "Part Suppliers" msgstr "Dostawcy Części" -#: part/templates/part/detail.html:383 +#: part/templates/part/detail.html:406 msgid "Part Manufacturers" msgstr "Producenci części" -#: part/templates/part/detail.html:399 +#: part/templates/part/detail.html:422 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:696 msgid "Related Part" msgstr "Powiązane części" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:704 msgid "Add Related Part" msgstr "Dodaj powiązaną część" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:796 msgid "Add Test Result Template" msgstr "" #: part/templates/part/import_wizard/ajax_part_upload.html:29 #: part/templates/part/import_wizard/part_upload.html:14 -msgid "Unsuffitient privileges." -msgstr "Niewystarczające uprawnienia." +msgid "Insufficient privileges." +msgstr "" #: part/templates/part/import_wizard/part_upload.html:8 msgid "Return to Parts" @@ -5715,6 +5792,34 @@ msgstr "Powrót do części" msgid "Import Parts from File" msgstr "Importuj części z pliku" +#: part/templates/part/import_wizard/part_upload.html:31 +msgid "Requirements for part import" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "The part import file must contain the required named columns as provided in the " +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:89 +msgid "Download Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:92 +#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 +#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 +msgid "Format" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:93 +#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 +#: templates/js/translated/order.js:999 +msgid "Select file format" +msgstr "Wybierz format pliku" + #: part/templates/part/part_app_base.html:12 msgid "Part List" msgstr "Lista części" @@ -5804,12 +5909,12 @@ msgstr "Część jest wirtualna (nie fizyczna)" #: templates/js/translated/company.js:660 #: templates/js/translated/company.js:921 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:677 templates/js/translated/part.js:755 +#: templates/js/translated/part.js:680 templates/js/translated/part.js:1026 msgid "Inactive" msgstr "Nieaktywny" #: part/templates/part/part_base.html:165 -#: part/templates/part/part_base.html:666 +#: part/templates/part/part_base.html:680 msgid "Show Part Details" msgstr "" @@ -5837,38 +5942,38 @@ msgid "Minimum stock level" msgstr "Minimalny poziom stanu magazynowego" #: part/templates/part/part_base.html:330 templates/js/translated/bom.js:1032 -#: templates/js/translated/part.js:798 templates/js/translated/part.js:1604 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:1875 #: templates/js/translated/pricing.js:124 #: templates/js/translated/pricing.js:762 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:345 +#: part/templates/part/part_base.html:359 msgid "Latest Serial Number" msgstr "Ostatni numer seryjny" -#: part/templates/part/part_base.html:349 +#: part/templates/part/part_base.html:363 #: stock/templates/stock/item_base.html:331 msgid "Search for serial number" msgstr "Szukaj numeru seryjnego" -#: part/templates/part/part_base.html:449 +#: part/templates/part/part_base.html:463 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:495 +#: part/templates/part/part_base.html:509 msgid "Calculate" msgstr "Oblicz" -#: part/templates/part/part_base.html:512 +#: part/templates/part/part_base.html:526 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:564 +#: part/templates/part/part_base.html:578 msgid "No matching images found" msgstr "Nie znaleziono pasujących obrazów" -#: part/templates/part/part_base.html:660 +#: part/templates/part/part_base.html:674 msgid "Hide Part Details" msgstr "Ukryj szczegóły części" @@ -5920,15 +6025,6 @@ msgstr "Cena wewnętrzna" msgid "No pricing information is available for this part." msgstr "Brak dostępnych informacji o cenach dla tej części." -#: part/templates/part/part_scheduling.html:13 -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:63 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:2043 templates/js/translated/pricing.js:537 -#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2516 -msgid "Date" -msgstr "Data" - #: part/templates/part/part_scheduling.html:14 msgid "Scheduled Quantity" msgstr "" @@ -5941,7 +6037,7 @@ msgstr "Warianty" msgid "Scheduling" msgstr "Planowanie" -#: part/templates/part/part_sidebar.html:48 +#: part/templates/part/part_sidebar.html:53 msgid "Test Templates" msgstr "Szablony testowe" @@ -5960,7 +6056,7 @@ msgstr "" #: part/templates/part/prices.html:25 stock/admin.py:106 #: stock/templates/stock/item_base.html:440 #: templates/js/translated/company.js:1039 -#: templates/js/translated/stock.js:1940 +#: templates/js/translated/stock.js:1935 msgid "Last Updated" msgstr "Ostatnia aktualizacja" @@ -6023,8 +6119,8 @@ msgstr "" msgid "Add Sell Price Break" msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:639 -#: templates/js/translated/part.js:1373 templates/js/translated/part.js:1375 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:1644 templates/js/translated/part.js:1646 msgid "No Stock" msgstr "Brak w magazynie" @@ -6087,27 +6183,32 @@ msgstr "Nieznana baza danych" msgid "{title} v{version}" msgstr "" -#: part/views.py:109 +#: part/views.py:111 msgid "Match References" msgstr "" -#: part/views.py:354 +#: part/views.py:239 +#, python-brace-format +msgid "Can't import part {name} because there is no category assigned" +msgstr "" + +#: part/views.py:378 msgid "Part QR Code" msgstr "Kod QR części" -#: part/views.py:372 +#: part/views.py:396 msgid "Select Part Image" msgstr "Wybierz obrazek części" -#: part/views.py:398 +#: part/views.py:422 msgid "Updated part image" msgstr "Zaktualizowano zdjęcie części" -#: part/views.py:401 +#: part/views.py:425 msgid "Part image not found" msgstr "Nie znaleziono obrazka części" -#: part/views.py:493 +#: part/views.py:517 msgid "Part Pricing" msgstr "Cennik części" @@ -6156,28 +6257,48 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:29 -#: plugin/builtin/integration/core_notifications.py:31 +#: plugin/builtin/integration/core_notifications.py:33 msgid "InvenTree contributors" msgstr "" -#: plugin/builtin/integration/core_notifications.py:30 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:32 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notificaton methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:37 -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:80 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:38 -#: plugin/builtin/integration/core_notifications.py:57 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:81 msgid "Allow sending of emails for event notifications" msgstr "" +#: plugin/builtin/integration/core_notifications.py:45 +msgid "Enable slack notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:46 +msgid "Allow sending of slack channel messages for event notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:51 +msgid "Slack incoming webhook url" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:52 +msgid "URL that is used to send messages to a slack channel" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:162 +msgid "Open link" +msgstr "" + #: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" @@ -6409,6 +6530,10 @@ msgstr "" msgid "Asset file description" msgstr "" +#: report/templates/report/inventree_bill_of_materials_report.html:133 +msgid "Materials needed" +msgstr "" + #: report/templates/report/inventree_build_order_base.html:146 msgid "Required For" msgstr "" @@ -6427,7 +6552,7 @@ msgstr "" #: templates/js/translated/build.js:1244 templates/js/translated/build.js:1745 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:121 templates/js/translated/order.js:3611 -#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:522 +#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:521 msgid "Serial Number" msgstr "Numer Seryjny" @@ -6459,8 +6584,9 @@ msgid "Installed Items" msgstr "Zainstalowane elementy" #: report/templates/report/inventree_test_report_base.html:137 -#: stock/admin.py:87 templates/js/translated/stock.js:642 -#: templates/js/translated/stock.js:812 templates/js/translated/stock.js:2765 +#: stock/admin.py:87 templates/js/translated/part.js:749 +#: templates/js/translated/stock.js:641 templates/js/translated/stock.js:811 +#: templates/js/translated/stock.js:2760 msgid "Serial" msgstr "Numer seryjny" @@ -6515,13 +6641,9 @@ msgstr "" msgid "Purchase Order ID" msgstr "" -#: stock/admin.py:107 templates/js/translated/stock.js:1910 -msgid "Stocktake" -msgstr "" - #: stock/admin.py:108 stock/models.py:764 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/stock.js:1924 +#: templates/js/translated/stock.js:1919 msgid "Expiry Date" msgstr "Data ważności" @@ -6936,7 +7058,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2912 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2907 msgid "Install Stock Item" msgstr "" @@ -6944,7 +7066,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1561 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1560 msgid "Add Test Result" msgstr "" @@ -7117,10 +7239,6 @@ msgstr "" msgid "Stale" msgstr "" -#: stock/templates/stock/item_base.html:445 -msgid "Last Stocktake" -msgstr "Ostatnia inwentaryzacja" - #: stock/templates/stock/item_base.html:449 msgid "No stocktake performed" msgstr "" @@ -7394,7 +7512,8 @@ msgstr "" #: templates/InvenTree/notifications/notifications.html:10 #: templates/InvenTree/notifications/sidebar.html:5 -#: templates/InvenTree/settings/sidebar.html:17 templates/notifications.html:5 +#: templates/InvenTree/settings/sidebar.html:17 +#: templates/InvenTree/settings/sidebar.html:35 templates/notifications.html:5 msgid "Notifications" msgstr "" @@ -7475,6 +7594,14 @@ msgstr "Podstawowy adres URL dla tej wtyczki to %(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:22 templates/js/translated/forms.js:646 +#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:649 msgid "Confirm" msgstr "Potwierdź" @@ -8316,7 +8443,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 -#: templates/js/translated/part.js:2445 +#: templates/js/translated/part.js:2726 msgid "Minimum Quantity" msgstr "Minimalna ilość" @@ -8469,7 +8596,7 @@ msgstr "" msgid "Unlink" msgstr "Rozłącz" -#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1089 +#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1088 msgid "Remove stock item" msgstr "" @@ -8551,16 +8678,6 @@ msgstr "Zamknij" msgid "Download BOM Template" msgstr "Pobierz szablon BOM-u" -#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 -#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 -msgid "Format" -msgstr "" - -#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 -#: templates/js/translated/order.js:999 -msgid "Select file format" -msgstr "Wybierz format pliku" - #: templates/js/translated/bom.js:320 msgid "Multi Level BOM" msgstr "" @@ -8691,7 +8808,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:1145 templates/js/translated/build.js:1923 -#: templates/js/translated/part.js:790 templates/js/translated/part.js:1572 +#: templates/js/translated/part.js:1061 templates/js/translated/part.js:1843 msgid "Includes variant stock" msgstr "" @@ -8776,13 +8893,13 @@ msgstr "" msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:317 templates/js/translated/stock.js:95 -#: templates/js/translated/stock.js:237 +#: templates/js/translated/build.js:317 templates/js/translated/stock.js:94 +#: templates/js/translated/stock.js:236 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:319 templates/js/translated/stock.js:97 -#: templates/js/translated/stock.js:239 +#: templates/js/translated/build.js:319 templates/js/translated/stock.js:96 +#: templates/js/translated/stock.js:238 msgid "Latest serial number" msgstr "Ostatni numer seryjny" @@ -8990,9 +9107,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1466 -#: templates/js/translated/part.js:2003 templates/js/translated/stock.js:1725 -#: templates/js/translated/stock.js:2428 +#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1737 +#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1724 +#: templates/js/translated/stock.js:2423 msgid "Select" msgstr "Wybierz" @@ -9004,7 +9121,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2695 +#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2690 msgid "No user information" msgstr "Brak informacji o użytkowniku" @@ -9077,34 +9194,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:652 -#: templates/js/translated/company.js:913 templates/js/translated/part.js:661 -#: templates/js/translated/part.js:747 +#: templates/js/translated/company.js:913 templates/js/translated/part.js:664 +#: templates/js/translated/part.js:1018 msgid "Template part" msgstr "" #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:917 templates/js/translated/part.js:665 -#: templates/js/translated/part.js:751 +#: templates/js/translated/company.js:917 templates/js/translated/part.js:668 +#: templates/js/translated/part.js:1022 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:784 templates/js/translated/part.js:870 +#: templates/js/translated/company.js:784 templates/js/translated/part.js:1141 msgid "No parameters found" msgstr "Nie znaleziono parametrów" -#: templates/js/translated/company.js:821 templates/js/translated/part.js:912 +#: templates/js/translated/company.js:821 templates/js/translated/part.js:1183 msgid "Edit parameter" msgstr "Edytuj Parametr" -#: templates/js/translated/company.js:822 templates/js/translated/part.js:913 +#: templates/js/translated/company.js:822 templates/js/translated/part.js:1184 msgid "Delete parameter" msgstr "Usuń parametr" -#: templates/js/translated/company.js:841 templates/js/translated/part.js:930 +#: templates/js/translated/company.js:841 templates/js/translated/part.js:1201 msgid "Edit Parameter" msgstr "Edytuj Parametr" -#: templates/js/translated/company.js:852 templates/js/translated/part.js:942 +#: templates/js/translated/company.js:852 templates/js/translated/part.js:1213 msgid "Delete Parameter" msgstr "Usuń parametr" @@ -9184,61 +9301,61 @@ msgstr "Wyczyść wszystkie filtry" msgid "Create filter" msgstr "Utwórz filtr" -#: templates/js/translated/forms.js:369 templates/js/translated/forms.js:384 -#: templates/js/translated/forms.js:398 templates/js/translated/forms.js:412 +#: templates/js/translated/forms.js:372 templates/js/translated/forms.js:387 +#: templates/js/translated/forms.js:401 templates/js/translated/forms.js:415 msgid "Action Prohibited" msgstr "Działanie zabronione" -#: templates/js/translated/forms.js:371 +#: templates/js/translated/forms.js:374 msgid "Create operation not allowed" msgstr "Operacja utworzenia nie jest dozwolona" -#: templates/js/translated/forms.js:386 +#: templates/js/translated/forms.js:389 msgid "Update operation not allowed" msgstr "Operacja aktualizacji nie jest dozwolona" -#: templates/js/translated/forms.js:400 +#: templates/js/translated/forms.js:403 msgid "Delete operation not allowed" msgstr "Operacja usuwania nie jest dozwolona" -#: templates/js/translated/forms.js:414 +#: templates/js/translated/forms.js:417 msgid "View operation not allowed" msgstr "Operacja przeglądania nie jest dozwolona" -#: templates/js/translated/forms.js:672 +#: templates/js/translated/forms.js:675 msgid "Keep this form open" msgstr "Pozostaw ten formularz otwarty" -#: templates/js/translated/forms.js:773 +#: templates/js/translated/forms.js:776 msgid "Enter a valid number" msgstr "Wprowadź poprawny numer" -#: templates/js/translated/forms.js:1266 templates/modals.html:19 +#: templates/js/translated/forms.js:1269 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "Istnieją błędy formularza" -#: templates/js/translated/forms.js:1703 +#: templates/js/translated/forms.js:1706 msgid "No results found" msgstr "Nie znaleziono wyników" -#: templates/js/translated/forms.js:1919 templates/search.html:29 +#: templates/js/translated/forms.js:1922 templates/search.html:29 msgid "Searching" msgstr "Wyszukiwanie" -#: templates/js/translated/forms.js:2172 +#: templates/js/translated/forms.js:2175 msgid "Clear input" msgstr "Wyczyść wejście" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "File Column" msgstr "Kolumna pliku" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "Field Name" msgstr "Nazwa pola" -#: templates/js/translated/forms.js:2640 +#: templates/js/translated/forms.js:2643 msgid "Select Columns" msgstr "Wybór Kolumn" @@ -9259,7 +9376,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1113 +#: templates/js/translated/stock.js:1112 msgid "Select Stock Items" msgstr "Wybierz przedmioty magazynowe" @@ -9593,7 +9710,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2184 +#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2179 msgid "Stock Status" msgstr "" @@ -9617,7 +9734,7 @@ msgstr "Potwierdź odbiór elementów" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1982 templates/js/translated/part.js:983 +#: templates/js/translated/order.js:1982 templates/js/translated/part.js:1254 msgid "No purchase orders found" msgstr "" @@ -9650,8 +9767,8 @@ msgstr "" msgid "Total" msgstr "Razem" -#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1085 -#: templates/js/translated/part.js:1137 +#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1356 +#: templates/js/translated/part.js:1408 msgid "Total Quantity" msgstr "" @@ -9669,11 +9786,11 @@ msgid "Total Price" msgstr "Cena całkowita" #: templates/js/translated/order.js:2388 templates/js/translated/order.js:3900 -#: templates/js/translated/part.js:1121 +#: templates/js/translated/part.js:1392 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1166 +#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1437 msgid "Receive line item" msgstr "" @@ -9794,7 +9911,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3623 templates/js/translated/order.js:3712 -#: templates/js/translated/stock.js:1641 +#: templates/js/translated/stock.js:1640 msgid "Shipped to customer" msgstr "" @@ -9838,334 +9955,358 @@ msgstr "" msgid "No matching lines" msgstr "" -#: templates/js/translated/part.js:52 +#: templates/js/translated/part.js:55 msgid "Part Attributes" msgstr "Atrybuty części" -#: templates/js/translated/part.js:56 +#: templates/js/translated/part.js:59 msgid "Part Creation Options" msgstr "" -#: templates/js/translated/part.js:60 +#: templates/js/translated/part.js:63 msgid "Part Duplication Options" msgstr "" -#: templates/js/translated/part.js:64 +#: templates/js/translated/part.js:67 msgid "Supplier Options" msgstr "" -#: templates/js/translated/part.js:78 +#: templates/js/translated/part.js:81 msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:168 +#: templates/js/translated/part.js:171 msgid "Create Initial Stock" msgstr "" -#: templates/js/translated/part.js:169 +#: templates/js/translated/part.js:172 msgid "Create an initial stock item for this part" msgstr "" -#: templates/js/translated/part.js:176 +#: templates/js/translated/part.js:179 msgid "Initial Stock Quantity" msgstr "" -#: templates/js/translated/part.js:177 +#: templates/js/translated/part.js:180 msgid "Specify initial stock quantity for this part" msgstr "" -#: templates/js/translated/part.js:184 +#: templates/js/translated/part.js:187 msgid "Select destination stock location" msgstr "" -#: templates/js/translated/part.js:202 +#: templates/js/translated/part.js:205 msgid "Copy Category Parameters" msgstr "" -#: templates/js/translated/part.js:203 +#: templates/js/translated/part.js:206 msgid "Copy parameter templates from selected part category" msgstr "" -#: templates/js/translated/part.js:211 +#: templates/js/translated/part.js:214 msgid "Add Supplier Data" msgstr "Dodaj dane dostawcy" -#: templates/js/translated/part.js:212 +#: templates/js/translated/part.js:215 msgid "Create initial supplier data for this part" msgstr "" -#: templates/js/translated/part.js:268 +#: templates/js/translated/part.js:271 msgid "Copy Image" msgstr "Kopiuj obraz" -#: templates/js/translated/part.js:269 +#: templates/js/translated/part.js:272 msgid "Copy image from original part" msgstr "" -#: templates/js/translated/part.js:277 +#: templates/js/translated/part.js:280 msgid "Copy bill of materials from original part" msgstr "" -#: templates/js/translated/part.js:284 +#: templates/js/translated/part.js:287 msgid "Copy Parameters" msgstr "Kopiuj parametry" -#: templates/js/translated/part.js:285 +#: templates/js/translated/part.js:288 msgid "Copy parameter data from original part" msgstr "" -#: templates/js/translated/part.js:298 +#: templates/js/translated/part.js:301 msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:313 templates/js/translated/stock.js:122 +#: templates/js/translated/part.js:316 templates/js/translated/stock.js:121 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:329 +#: templates/js/translated/part.js:332 msgid "Edit Part Category" msgstr "Edytuj kategorię części" -#: templates/js/translated/part.js:342 +#: templates/js/translated/part.js:345 msgid "Are you sure you want to delete this part category?" msgstr "Czy na pewno chcesz usunąć tę kategorię części?" -#: templates/js/translated/part.js:347 +#: templates/js/translated/part.js:350 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:359 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:360 +#: templates/js/translated/part.js:363 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:368 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:394 +#: templates/js/translated/part.js:397 msgid "Edit Part" msgstr "Edytuj część" -#: templates/js/translated/part.js:396 +#: templates/js/translated/part.js:399 msgid "Part edited" msgstr "Część zmodyfikowana" -#: templates/js/translated/part.js:407 +#: templates/js/translated/part.js:410 msgid "Create Part Variant" msgstr "Utwórz wariant części" -#: templates/js/translated/part.js:459 +#: templates/js/translated/part.js:462 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:460 +#: templates/js/translated/part.js:463 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:477 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:476 +#: templates/js/translated/part.js:479 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:477 +#: templates/js/translated/part.js:480 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:478 +#: templates/js/translated/part.js:481 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:485 +#: templates/js/translated/part.js:488 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:521 +#: templates/js/translated/part.js:524 msgid "You are subscribed to notifications for this item" msgstr "Masz włączone powiadomienia dla tej części" -#: templates/js/translated/part.js:523 +#: templates/js/translated/part.js:526 msgid "You have subscribed to notifications for this item" msgstr "Masz włączone powiadomienia dla tej części" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:531 msgid "Subscribe to notifications for this item" msgstr "Włącz powiadomienia dla tej części" -#: templates/js/translated/part.js:530 +#: templates/js/translated/part.js:533 msgid "You have unsubscribed to notifications for this item" msgstr "Zostałeś wypisany z powiadomień dla tej części" -#: templates/js/translated/part.js:547 +#: templates/js/translated/part.js:550 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:560 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:560 +#: templates/js/translated/part.js:563 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:585 +#: templates/js/translated/part.js:588 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1554 +#: templates/js/translated/part.js:612 templates/js/translated/part.js:1825 #: templates/js/translated/table_filters.js:488 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:622 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:653 templates/js/translated/part.js:739 +#: templates/js/translated/part.js:656 templates/js/translated/part.js:1010 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:657 templates/js/translated/part.js:743 +#: templates/js/translated/part.js:660 templates/js/translated/part.js:1014 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:669 +#: templates/js/translated/part.js:672 msgid "Subscribed part" msgstr "Obserwowane części" -#: templates/js/translated/part.js:673 +#: templates/js/translated/part.js:676 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:815 +#: templates/js/translated/part.js:761 +msgid "Stock item has not been checked recently" +msgstr "" + +#: templates/js/translated/part.js:769 +msgid "Update item" +msgstr "" + +#: templates/js/translated/part.js:770 +msgid "Delete item" +msgstr "" + +#: templates/js/translated/part.js:871 +msgid "No stocktake information available" +msgstr "" + +#: templates/js/translated/part.js:910 templates/js/translated/part.js:933 +msgid "Edit Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:914 templates/js/translated/part.js:945 +msgid "Delete Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:1086 msgid "No variants found" msgstr "Nie znaleziono wariantów" -#: templates/js/translated/part.js:1236 +#: templates/js/translated/part.js:1507 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1260 +#: templates/js/translated/part.js:1531 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1327 templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1598 templates/js/translated/part.js:1936 msgid "No parts found" msgstr "Nie znaleziono części" -#: templates/js/translated/part.js:1521 +#: templates/js/translated/part.js:1792 msgid "No category" msgstr "Brak kategorii" -#: templates/js/translated/part.js:1552 +#: templates/js/translated/part.js:1823 msgid "No stock" msgstr "" -#: templates/js/translated/part.js:1576 +#: templates/js/translated/part.js:1847 msgid "Allocated to build orders" msgstr "" -#: templates/js/translated/part.js:1580 +#: templates/js/translated/part.js:1851 msgid "Allocated to sales orders" msgstr "" -#: templates/js/translated/part.js:1679 templates/js/translated/part.js:1922 -#: templates/js/translated/stock.js:2387 +#: templates/js/translated/part.js:1960 templates/js/translated/part.js:2203 +#: templates/js/translated/stock.js:2382 msgid "Display as list" msgstr "Wyświetl jako listę" -#: templates/js/translated/part.js:1695 +#: templates/js/translated/part.js:1976 msgid "Display as grid" msgstr "Wyświetl jako siatkę" -#: templates/js/translated/part.js:1761 +#: templates/js/translated/part.js:2042 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1766 +#: templates/js/translated/part.js:2047 msgid "Set Part Category" msgstr "Ustaw kategorię części" -#: templates/js/translated/part.js:1771 +#: templates/js/translated/part.js:2052 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1784 +#: templates/js/translated/part.js:2065 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1942 templates/js/translated/stock.js:2407 +#: templates/js/translated/part.js:2223 templates/js/translated/stock.js:2402 msgid "Display as tree" msgstr "Wyświetl jako drzewo" -#: templates/js/translated/part.js:2022 +#: templates/js/translated/part.js:2303 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2038 +#: templates/js/translated/part.js:2319 msgid "Subscribed category" msgstr "Obserwowana kategoria" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2383 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2153 templates/js/translated/stock.js:1338 +#: templates/js/translated/part.js:2434 templates/js/translated/stock.js:1337 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2154 templates/js/translated/stock.js:1339 -#: templates/js/translated/stock.js:1599 +#: templates/js/translated/part.js:2435 templates/js/translated/stock.js:1338 +#: templates/js/translated/stock.js:1598 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2441 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2182 +#: templates/js/translated/part.js:2463 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2196 +#: templates/js/translated/part.js:2477 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2277 templates/js/translated/part.js:2278 +#: templates/js/translated/part.js:2558 templates/js/translated/part.js:2559 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2280 +#: templates/js/translated/part.js:2561 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:2286 +#: templates/js/translated/part.js:2567 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:2336 +#: templates/js/translated/part.js:2617 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2623 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:2438 +#: templates/js/translated/part.js:2719 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2454 +#: templates/js/translated/part.js:2735 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:2499 +#: templates/js/translated/part.js:2780 msgid "Minimum Stock Level" msgstr "" @@ -10293,388 +10434,388 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:74 +#: templates/js/translated/stock.js:73 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:104 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:114 +#: templates/js/translated/stock.js:113 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:148 +#: templates/js/translated/stock.js:147 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:163 +#: templates/js/translated/stock.js:162 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:177 +#: templates/js/translated/stock.js:176 msgid "Are you sure you want to delete this stock location?" msgstr "Czy na pewno chcesz skasować tą lokację?" -#: templates/js/translated/stock.js:184 +#: templates/js/translated/stock.js:183 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:193 +#: templates/js/translated/stock.js:192 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:197 +#: templates/js/translated/stock.js:196 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:201 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:256 +#: templates/js/translated/stock.js:255 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:298 +#: templates/js/translated/stock.js:297 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:304 +#: templates/js/translated/stock.js:303 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:368 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:389 +#: templates/js/translated/stock.js:388 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:405 +#: templates/js/translated/stock.js:404 msgid "Are you sure you want to delete this stock item?" msgstr "Czy na pewno chcesz usunąć tą część?" -#: templates/js/translated/stock.js:410 +#: templates/js/translated/stock.js:409 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:431 +#: templates/js/translated/stock.js:430 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:481 +#: templates/js/translated/stock.js:480 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:494 +#: templates/js/translated/stock.js:493 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:519 +#: templates/js/translated/stock.js:518 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:523 templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:522 templates/js/translated/stock.js:523 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:540 +#: templates/js/translated/stock.js:539 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:560 +#: templates/js/translated/stock.js:559 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:568 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:692 +#: templates/js/translated/stock.js:691 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:693 +#: templates/js/translated/stock.js:692 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:770 +#: templates/js/translated/stock.js:769 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:771 +#: templates/js/translated/stock.js:770 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:773 +#: templates/js/translated/stock.js:772 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:774 +#: templates/js/translated/stock.js:773 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:863 +#: templates/js/translated/stock.js:862 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:864 +#: templates/js/translated/stock.js:863 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:958 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:959 msgid "Move" msgstr "Przenieś" -#: templates/js/translated/stock.js:966 +#: templates/js/translated/stock.js:965 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:967 +#: templates/js/translated/stock.js:966 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:971 +#: templates/js/translated/stock.js:970 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:972 +#: templates/js/translated/stock.js:971 msgid "Take" msgstr "Weź" -#: templates/js/translated/stock.js:976 +#: templates/js/translated/stock.js:975 msgid "Add Stock" msgstr "Dodaj stan" -#: templates/js/translated/stock.js:977 users/models.py:220 +#: templates/js/translated/stock.js:976 users/models.py:221 msgid "Add" msgstr "Dodaj" -#: templates/js/translated/stock.js:981 +#: templates/js/translated/stock.js:980 msgid "Delete Stock" msgstr "Usuń stan magazynowy" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1114 +#: templates/js/translated/stock.js:1113 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1141 +#: templates/js/translated/stock.js:1140 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1277 +#: templates/js/translated/stock.js:1276 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1279 +#: templates/js/translated/stock.js:1278 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1284 +#: templates/js/translated/stock.js:1283 msgid "NO RESULT" msgstr "BRAK WYNIKÓW" -#: templates/js/translated/stock.js:1331 +#: templates/js/translated/stock.js:1330 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1334 +#: templates/js/translated/stock.js:1333 msgid "Add test result" msgstr "Dodaj wynik testu" -#: templates/js/translated/stock.js:1360 +#: templates/js/translated/stock.js:1359 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1417 +#: templates/js/translated/stock.js:1416 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1582 +#: templates/js/translated/stock.js:1581 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1604 +#: templates/js/translated/stock.js:1603 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1633 +#: templates/js/translated/stock.js:1632 msgid "In production" msgstr "W produkcji" -#: templates/js/translated/stock.js:1637 +#: templates/js/translated/stock.js:1636 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1645 +#: templates/js/translated/stock.js:1644 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1651 +#: templates/js/translated/stock.js:1650 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1820 +#: templates/js/translated/stock.js:1815 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1825 +#: templates/js/translated/stock.js:1820 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1828 +#: templates/js/translated/stock.js:1823 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1831 +#: templates/js/translated/stock.js:1826 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1833 +#: templates/js/translated/stock.js:1828 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1835 +#: templates/js/translated/stock.js:1830 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1838 +#: templates/js/translated/stock.js:1833 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1837 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1844 +#: templates/js/translated/stock.js:1839 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1846 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1853 +#: templates/js/translated/stock.js:1848 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1855 +#: templates/js/translated/stock.js:1850 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1859 +#: templates/js/translated/stock.js:1854 #: templates/js/translated/table_filters.js:216 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1989 +#: templates/js/translated/stock.js:1984 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2026 +#: templates/js/translated/stock.js:2021 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2199 +#: templates/js/translated/stock.js:2194 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2213 +#: templates/js/translated/stock.js:2208 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2214 +#: templates/js/translated/stock.js:2209 msgid "Status code must be selected" msgstr "Kod statusu musi być wybrany" -#: templates/js/translated/stock.js:2446 +#: templates/js/translated/stock.js:2441 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2536 msgid "Details" msgstr "Szczegóły" -#: templates/js/translated/stock.js:2557 +#: templates/js/translated/stock.js:2552 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2579 +#: templates/js/translated/stock.js:2574 msgid "Location no longer exists" msgstr "Lokalizacja już nie istnieje" -#: templates/js/translated/stock.js:2598 +#: templates/js/translated/stock.js:2593 msgid "Purchase order no longer exists" msgstr "Zamówienie zakupu już nie istnieje" -#: templates/js/translated/stock.js:2617 +#: templates/js/translated/stock.js:2612 msgid "Customer no longer exists" msgstr "Klient już nie istnieje" -#: templates/js/translated/stock.js:2635 +#: templates/js/translated/stock.js:2630 msgid "Stock item no longer exists" msgstr "Element magazynowy już nie istnieje" -#: templates/js/translated/stock.js:2658 +#: templates/js/translated/stock.js:2653 msgid "Added" msgstr "Dodano" -#: templates/js/translated/stock.js:2666 +#: templates/js/translated/stock.js:2661 msgid "Removed" msgstr "Usunięto" -#: templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2737 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2793 templates/js/translated/stock.js:2829 +#: templates/js/translated/stock.js:2788 templates/js/translated/stock.js:2824 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2845 +#: templates/js/translated/stock.js:2840 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2866 +#: templates/js/translated/stock.js:2861 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2867 +#: templates/js/translated/stock.js:2862 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2869 +#: templates/js/translated/stock.js:2864 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2870 +#: templates/js/translated/stock.js:2865 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:2866 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2872 +#: templates/js/translated/stock.js:2867 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2885 +#: templates/js/translated/stock.js:2880 msgid "Select part to install" msgstr "" @@ -10699,7 +10840,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:92 -#: templates/js/translated/table_filters.js:516 +#: templates/js/translated/table_filters.js:520 msgid "Has Pricing" msgstr "" @@ -10915,6 +11056,10 @@ msgstr "" msgid "Purchasable" msgstr "Możliwość zakupu" +#: templates/js/translated/table_filters.js:504 +msgid "Has stocktake entries" +msgstr "" + #: templates/js/translated/tables.js:70 msgid "Display calendar view" msgstr "Pokaż widok kalendarza" @@ -11209,35 +11354,35 @@ msgstr "Uprawnienia" msgid "Important dates" msgstr "Ważne daty" -#: users/models.py:207 +#: users/models.py:208 msgid "Permission set" msgstr "Uprawnienia nadane" -#: users/models.py:215 +#: users/models.py:216 msgid "Group" msgstr "Grupa" -#: users/models.py:218 +#: users/models.py:219 msgid "View" msgstr "Widok" -#: users/models.py:218 +#: users/models.py:219 msgid "Permission to view items" msgstr "Uprawnienie do wyświetlania przedmiotów" -#: users/models.py:220 +#: users/models.py:221 msgid "Permission to add items" msgstr "Uprawnienie do dodawania przedmiotów" -#: users/models.py:222 +#: users/models.py:223 msgid "Change" msgstr "Zmień" -#: users/models.py:222 +#: users/models.py:223 msgid "Permissions to edit items" msgstr "Uprawnienie do edycji przedmiotów" -#: users/models.py:224 +#: users/models.py:225 msgid "Permission to delete items" msgstr "Uprawnienie do usuwania przedmiotów" diff --git a/InvenTree/locale/pt/LC_MESSAGES/django.po b/InvenTree/locale/pt/LC_MESSAGES/django.po index 8189d92cf3..45b27d9758 100644 --- a/InvenTree/locale/pt/LC_MESSAGES/django.po +++ b/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: 2022-12-30 20:46+0000\n" -"PO-Revision-Date: 2022-12-31 11:30\n" +"POT-Creation-Date: 2023-01-01 11:05+0000\n" +"PO-Revision-Date: 2023-01-01 11:26\n" "Last-Translator: \n" "Language-Team: Portuguese, Brazilian\n" "Language: pt_BR\n" @@ -34,7 +34,7 @@ msgstr "Insira uma Data" #: company/templates/company/sidebar.html:25 order/models.py:943 #: order/templates/order/po_sidebar.html:11 #: order/templates/order/so_sidebar.html:17 part/admin.py:27 -#: part/templates/part/part_sidebar.html:57 +#: part/models.py:2932 part/templates/part/part_sidebar.html:62 #: report/templates/report/inventree_build_order_base.html:172 #: stock/admin.py:103 stock/models.py:2061 stock/models.py:2169 #: stock/serializers.py:321 stock/serializers.py:454 stock/serializers.py:535 @@ -44,8 +44,8 @@ msgstr "Insira uma Data" #: templates/js/translated/company.js:1023 #: templates/js/translated/order.js:2435 templates/js/translated/order.js:2569 #: templates/js/translated/order.js:3067 templates/js/translated/order.js:4004 -#: templates/js/translated/order.js:4385 templates/js/translated/stock.js:1413 -#: templates/js/translated/stock.js:2020 +#: templates/js/translated/order.js:4385 templates/js/translated/part.js:882 +#: templates/js/translated/stock.js:1412 templates/js/translated/stock.js:2015 msgid "Notes" msgstr "Anotações" @@ -204,18 +204,18 @@ msgstr "Anexo" msgid "Select file to attach" msgstr "Selecione arquivo para anexar" -#: InvenTree/models.py:412 common/models.py:2366 company/models.py:129 +#: InvenTree/models.py:412 common/models.py:2373 company/models.py:129 #: company/models.py:281 company/models.py:516 order/models.py:85 -#: order/models.py:1282 part/admin.py:25 part/models.py:865 +#: order/models.py:1282 part/admin.py:25 part/models.py:866 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: stock/admin.py:102 templates/js/translated/company.js:692 #: templates/js/translated/company.js:1012 -#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1615 +#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1886 msgid "Link" msgstr "Link" -#: InvenTree/models.py:413 build/models.py:290 part/models.py:866 +#: InvenTree/models.py:413 build/models.py:290 part/models.py:867 #: stock/models.py:716 msgid "Link to external URL" msgstr "Link para URL externa" @@ -229,12 +229,13 @@ msgstr "Comentario" msgid "File comment" msgstr "Comentario sobre arquivo" -#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1810 -#: common/models.py:1811 common/models.py:2034 common/models.py:2035 -#: common/models.py:2296 common/models.py:2297 part/models.py:2948 -#: part/models.py:2968 plugin/models.py:264 plugin/models.py:265 +#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1817 +#: common/models.py:1818 common/models.py:2041 common/models.py:2042 +#: common/models.py:2303 common/models.py:2304 part/models.py:2940 +#: part/models.py:3026 part/models.py:3046 plugin/models.py:264 +#: plugin/models.py:265 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2689 +#: templates/js/translated/stock.js:2684 msgid "User" msgstr "Usuario" @@ -271,19 +272,20 @@ msgstr "Erro renomeando o arquivo" msgid "Invalid choice" msgstr "Escolha invalida" -#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2020 -#: company/models.py:363 label/models.py:101 part/models.py:809 -#: part/models.py:3123 plugin/models.py:94 report/models.py:152 +#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2027 +#: company/models.py:363 label/models.py:101 part/models.py:810 +#: part/models.py:3201 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 +#: templates/InvenTree/settings/notifications.html:17 #: templates/InvenTree/settings/plugin.html:60 #: templates/InvenTree/settings/plugin.html:104 #: templates/InvenTree/settings/plugin_settings.html:23 -#: templates/InvenTree/settings/settings.html:344 +#: templates/InvenTree/settings/settings.html:345 #: templates/js/translated/company.js:581 #: templates/js/translated/company.js:794 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:711 templates/js/translated/part.js:880 -#: templates/js/translated/part.js:2010 templates/js/translated/stock.js:2434 +#: templates/js/translated/part.js:982 templates/js/translated/part.js:1151 +#: templates/js/translated/part.js:2291 templates/js/translated/stock.js:2429 msgid "Name" msgstr "Nome" @@ -292,24 +294,25 @@ msgstr "Nome" #: company/models.py:522 company/templates/company/company_base.html:72 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:108 label/models.py:108 -#: order/models.py:83 part/admin.py:141 part/admin.py:222 part/models.py:832 -#: part/models.py:3132 part/templates/part/category.html:75 +#: order/models.py:83 part/admin.py:174 part/admin.py:255 part/models.py:833 +#: part/models.py:3210 part/templates/part/category.html:75 #: part/templates/part/part_base.html:172 #: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/admin.py:25 stock/templates/stock/location.html:117 +#: templates/InvenTree/settings/notifications.html:19 #: templates/InvenTree/settings/plugin_settings.html:28 -#: templates/InvenTree/settings/settings.html:355 +#: templates/InvenTree/settings/settings.html:356 #: templates/js/translated/bom.js:592 templates/js/translated/bom.js:895 #: templates/js/translated/build.js:2596 templates/js/translated/company.js:445 #: templates/js/translated/company.js:703 #: templates/js/translated/company.js:987 templates/js/translated/order.js:2030 #: templates/js/translated/order.js:2267 templates/js/translated/order.js:2845 -#: templates/js/translated/part.js:773 templates/js/translated/part.js:1223 -#: templates/js/translated/part.js:1497 templates/js/translated/part.js:2046 -#: templates/js/translated/part.js:2121 templates/js/translated/stock.js:1787 -#: templates/js/translated/stock.js:2466 templates/js/translated/stock.js:2526 +#: templates/js/translated/part.js:1044 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1768 templates/js/translated/part.js:2327 +#: templates/js/translated/part.js:2402 templates/js/translated/stock.js:1782 +#: templates/js/translated/stock.js:2461 templates/js/translated/stock.js:2521 msgid "Description" msgstr "Descricao" @@ -322,7 +325,7 @@ msgid "parent" msgstr "parent" #: InvenTree/models.py:580 InvenTree/models.py:581 -#: templates/js/translated/part.js:2055 templates/js/translated/stock.js:2475 +#: templates/js/translated/part.js:2336 templates/js/translated/stock.js:2470 msgid "Path" msgstr "Caminho" @@ -354,7 +357,7 @@ msgstr "Erro de servidor" msgid "An error has been logged by the server." msgstr "Log de erro salvo pelo servidor." -#: InvenTree/serializers.py:58 part/models.py:3468 +#: InvenTree/serializers.py:58 part/models.py:3546 msgid "Must be a valid number" msgstr "Preicsa ser um numero valido" @@ -421,107 +424,107 @@ msgstr "URL do arquivo de imagem remoto" msgid "Downloading images from remote URL is not enabled" msgstr "Baixar imagens de URL remota não está habilitado" -#: InvenTree/settings.py:639 +#: InvenTree/settings.py:642 msgid "Czech" msgstr "Tcheco" -#: InvenTree/settings.py:640 +#: InvenTree/settings.py:643 msgid "Danish" msgstr "Dinamarquês" -#: InvenTree/settings.py:641 +#: InvenTree/settings.py:644 msgid "German" msgstr "Alemão" -#: InvenTree/settings.py:642 +#: InvenTree/settings.py:645 msgid "Greek" msgstr "Grego" -#: InvenTree/settings.py:643 +#: InvenTree/settings.py:646 msgid "English" msgstr "Inglês" -#: InvenTree/settings.py:644 +#: InvenTree/settings.py:647 msgid "Spanish" msgstr "Espanhol" -#: InvenTree/settings.py:645 +#: InvenTree/settings.py:648 msgid "Spanish (Mexican)" msgstr "Espanhol (Mexicano)" -#: InvenTree/settings.py:646 +#: InvenTree/settings.py:649 msgid "Farsi / Persian" msgstr "Persa" -#: InvenTree/settings.py:647 +#: InvenTree/settings.py:650 msgid "French" msgstr "Francês" -#: InvenTree/settings.py:648 +#: InvenTree/settings.py:651 msgid "Hebrew" msgstr "Hebraico" -#: InvenTree/settings.py:649 +#: InvenTree/settings.py:652 msgid "Hungarian" msgstr "Húngaro" -#: InvenTree/settings.py:650 +#: InvenTree/settings.py:653 msgid "Italian" msgstr "Italiano" -#: InvenTree/settings.py:651 +#: InvenTree/settings.py:654 msgid "Japanese" msgstr "Japonês" -#: InvenTree/settings.py:652 +#: InvenTree/settings.py:655 msgid "Korean" msgstr "Coreano" -#: InvenTree/settings.py:653 +#: InvenTree/settings.py:656 msgid "Dutch" msgstr "Holandês" -#: InvenTree/settings.py:654 +#: InvenTree/settings.py:657 msgid "Norwegian" msgstr "Norueguês" -#: InvenTree/settings.py:655 +#: InvenTree/settings.py:658 msgid "Polish" msgstr "Polonês" -#: InvenTree/settings.py:656 +#: InvenTree/settings.py:659 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:657 +#: InvenTree/settings.py:660 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:658 +#: InvenTree/settings.py:661 msgid "Russian" msgstr "" -#: InvenTree/settings.py:659 +#: InvenTree/settings.py:662 msgid "Slovenian" msgstr "" -#: InvenTree/settings.py:660 +#: InvenTree/settings.py:663 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:661 +#: InvenTree/settings.py:664 msgid "Thai" msgstr "" -#: InvenTree/settings.py:662 +#: InvenTree/settings.py:665 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:663 +#: InvenTree/settings.py:666 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:664 +#: InvenTree/settings.py:667 msgid "Chinese" msgstr "" @@ -652,7 +655,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2124 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2119 msgid "Merged stock items" msgstr "" @@ -756,7 +759,7 @@ msgstr "" #: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:141 -#: templates/InvenTree/settings/sidebar.html:47 +#: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:254 users/models.py:41 msgid "Build Orders" msgstr "" @@ -766,8 +769,9 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:155 order/models.py:241 order/models.py:651 -#: order/models.py:941 part/admin.py:224 part/models.py:3378 +#: order/models.py:941 part/admin.py:257 part/models.py:3456 #: part/templates/part/upload_bom.html:54 +#: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 #: templates/js/translated/bom.js:729 templates/js/translated/bom.js:905 @@ -793,13 +797,15 @@ msgstr "" #: build/models.py:180 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:684 #: order/models.py:1038 order/models.py:1149 order/models.py:1150 -#: part/models.py:381 part/models.py:2781 part/models.py:2894 -#: part/models.py:2909 part/models.py:2928 part/models.py:2946 -#: part/models.py:3045 part/models.py:3166 part/models.py:3258 -#: part/models.py:3343 part/models.py:3659 part/serializers.py:853 -#: part/templates/part/part_app_base.html:8 +#: part/models.py:382 part/models.py:2799 part/models.py:2912 +#: part/models.py:2972 part/models.py:2987 part/models.py:3006 +#: part/models.py:3024 part/models.py:3123 part/models.py:3244 +#: part/models.py:3336 part/models.py:3421 part/models.py:3737 +#: part/serializers.py:894 part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 +#: report/templates/report/inventree_bill_of_materials_report.html:110 +#: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_base.html:109 #: report/templates/report/inventree_po_report.html:89 #: report/templates/report/inventree_so_report.html:90 stock/serializers.py:90 @@ -819,12 +825,12 @@ msgstr "" #: templates/js/translated/order.js:1172 templates/js/translated/order.js:1676 #: templates/js/translated/order.js:2252 templates/js/translated/order.js:3199 #: templates/js/translated/order.js:3595 templates/js/translated/order.js:3825 -#: templates/js/translated/part.js:1208 templates/js/translated/part.js:1280 -#: templates/js/translated/part.js:1474 templates/js/translated/pricing.js:102 -#: templates/js/translated/stock.js:618 templates/js/translated/stock.js:783 -#: templates/js/translated/stock.js:993 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2552 templates/js/translated/stock.js:2747 -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/part.js:1479 templates/js/translated/part.js:1551 +#: templates/js/translated/part.js:1745 templates/js/translated/pricing.js:102 +#: templates/js/translated/stock.js:617 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:992 templates/js/translated/stock.js:1738 +#: templates/js/translated/stock.js:2547 templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2879 msgid "Part" msgstr "" @@ -890,7 +896,7 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:252 order/models.py:87 part/models.py:1001 +#: build/models.py:252 order/models.py:87 part/models.py:1002 #: part/templates/part/part_base.html:318 templates/js/translated/order.js:2858 msgid "Creation Date" msgstr "" @@ -923,7 +929,7 @@ msgstr "" #: build/models.py:283 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:101 #: order/templates/order/order_base.html:185 -#: order/templates/order/sales_order_base.html:183 part/models.py:1005 +#: order/templates/order/sales_order_base.html:183 part/models.py:1006 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2658 templates/js/translated/order.js:2064 msgid "Responsible" @@ -936,7 +942,7 @@ msgstr "" #: build/models.py:289 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:188 -#: part/templates/part/part_base.html:376 stock/models.py:714 +#: part/templates/part/part_base.html:390 stock/models.py:714 #: stock/templates/stock/item_base.html:203 msgid "External Link" msgstr "" @@ -1011,8 +1017,8 @@ msgstr "" #: templates/js/translated/order.js:107 templates/js/translated/order.js:3200 #: templates/js/translated/order.js:3502 templates/js/translated/order.js:3507 #: templates/js/translated/order.js:3602 templates/js/translated/order.js:3694 -#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 -#: templates/js/translated/stock.js:2625 +#: templates/js/translated/part.js:803 templates/js/translated/stock.js:618 +#: templates/js/translated/stock.js:783 templates/js/translated/stock.js:2620 msgid "Stock Item" msgstr "" @@ -1022,12 +1028,13 @@ msgstr "" #: build/models.py:1364 build/serializers.py:192 #: build/templates/build/build_base.html:85 -#: build/templates/build/detail.html:34 common/models.py:1842 +#: build/templates/build/detail.html:34 common/models.py:1849 #: order/models.py:934 order/models.py:1460 order/serializers.py:1206 -#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:223 -#: part/forms.py:40 part/models.py:3359 +#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:256 +#: part/forms.py:40 part/models.py:2919 part/models.py:3437 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 +#: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_base.html:113 #: report/templates/report/inventree_po_report.html:90 #: report/templates/report/inventree_so_report.html:91 @@ -1049,13 +1056,14 @@ msgstr "" #: templates/js/translated/order.js:3201 templates/js/translated/order.js:3521 #: templates/js/translated/order.js:3608 templates/js/translated/order.js:3700 #: templates/js/translated/order.js:3847 templates/js/translated/order.js:4338 -#: templates/js/translated/part.js:1078 templates/js/translated/part.js:2568 +#: templates/js/translated/part.js:805 templates/js/translated/part.js:876 +#: templates/js/translated/part.js:1349 templates/js/translated/part.js:2849 #: templates/js/translated/pricing.js:114 #: templates/js/translated/pricing.js:207 #: templates/js/translated/pricing.js:255 -#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:490 -#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:814 -#: templates/js/translated/stock.js:2674 templates/js/translated/stock.js:2759 +#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:489 +#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:813 +#: templates/js/translated/stock.js:2669 templates/js/translated/stock.js:2754 msgid "Quantity" msgstr "" @@ -1097,8 +1105,8 @@ msgid "Enter quantity for build output" msgstr "" #: build/serializers.py:207 build/serializers.py:683 order/models.py:327 -#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:645 -#: part/serializers.py:1016 stock/models.py:574 stock/models.py:1312 +#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:686 +#: part/serializers.py:1057 stock/models.py:574 stock/models.py:1312 #: stock/serializers.py:294 msgid "Quantity must be greater than zero" msgstr "" @@ -1113,7 +1121,7 @@ msgstr "" #: build/serializers.py:231 order/serializers.py:463 order/serializers.py:1210 #: stock/serializers.py:303 templates/js/translated/order.js:1545 -#: templates/js/translated/stock.js:303 templates/js/translated/stock.js:491 +#: templates/js/translated/stock.js:302 templates/js/translated/stock.js:490 msgid "Serial Numbers" msgstr "" @@ -1146,9 +1154,10 @@ msgstr "" #: templates/js/translated/build.js:1759 templates/js/translated/order.js:1572 #: templates/js/translated/order.js:3514 templates/js/translated/order.js:3619 #: templates/js/translated/order.js:3627 templates/js/translated/order.js:3708 -#: templates/js/translated/part.js:183 templates/js/translated/stock.js:620 -#: templates/js/translated/stock.js:785 templates/js/translated/stock.js:995 -#: templates/js/translated/stock.js:1895 templates/js/translated/stock.js:2566 +#: templates/js/translated/part.js:186 templates/js/translated/part.js:804 +#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 +#: templates/js/translated/stock.js:994 templates/js/translated/stock.js:1890 +#: templates/js/translated/stock.js:2561 msgid "Location" msgstr "" @@ -1162,8 +1171,8 @@ msgstr "" #: stock/templates/stock/item_base.html:421 #: templates/js/translated/barcode.js:237 templates/js/translated/build.js:2630 #: templates/js/translated/order.js:1681 templates/js/translated/order.js:2034 -#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1870 -#: templates/js/translated/stock.js:2643 templates/js/translated/stock.js:2775 +#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:2638 templates/js/translated/stock.js:2770 msgid "Status" msgstr "" @@ -1239,8 +1248,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:595 build/serializers.py:640 part/models.py:3495 -#: part/models.py:3651 +#: build/serializers.py:595 build/serializers.py:640 part/models.py:3573 +#: part/models.py:3729 msgid "BOM Item" msgstr "" @@ -1406,7 +1415,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2670 templates/js/translated/order.js:2051 #: templates/js/translated/order.js:2382 templates/js/translated/order.js:2866 -#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1093 +#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1364 msgid "Target Date" msgstr "" @@ -1484,8 +1493,8 @@ msgstr "" #: stock/templates/stock/item_base.html:168 #: templates/js/translated/build.js:1250 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:1884 -#: templates/js/translated/stock.js:2782 +#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:1879 +#: templates/js/translated/stock.js:2777 #: templates/js/translated/table_filters.js:179 #: templates/js/translated/table_filters.js:270 msgid "Batch" @@ -1617,8 +1626,8 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:86 #: order/templates/order/sales_order_detail.html:140 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:210 -#: part/templates/part/part_sidebar.html:55 stock/templates/stock/item.html:117 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:233 +#: part/templates/part/part_sidebar.html:60 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" msgstr "" @@ -1635,7 +1644,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:316 +#: build/templates/build/index.html:18 part/templates/part/detail.html:339 msgid "New Build Order" msgstr "" @@ -1928,9 +1937,9 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1014 part/admin.py:41 part/models.py:3168 +#: common/models.py:1014 part/admin.py:41 part/models.py:3246 #: report/models.py:158 templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:504 +#: templates/js/translated/table_filters.js:508 msgid "Template" msgstr "" @@ -1938,7 +1947,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:1021 part/admin.py:37 part/admin.py:229 part/models.py:957 +#: common/models.py:1021 part/admin.py:37 part/admin.py:262 part/models.py:958 #: templates/js/translated/bom.js:1595 #: templates/js/translated/table_filters.js:196 #: templates/js/translated/table_filters.js:467 @@ -1949,7 +1958,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1028 part/admin.py:38 part/models.py:963 +#: common/models.py:1028 part/admin.py:38 part/models.py:964 #: templates/js/translated/table_filters.js:475 msgid "Component" msgstr "" @@ -1958,7 +1967,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1035 part/admin.py:39 part/models.py:974 +#: common/models.py:1035 part/admin.py:39 part/models.py:975 msgid "Purchaseable" msgstr "" @@ -1966,7 +1975,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1042 part/admin.py:40 part/models.py:979 +#: common/models.py:1042 part/admin.py:40 part/models.py:980 #: templates/js/translated/table_filters.js:496 msgid "Salable" msgstr "" @@ -1975,10 +1984,10 @@ msgstr "" msgid "Parts are salable by default" msgstr "" -#: common/models.py:1049 part/admin.py:42 part/models.py:969 +#: common/models.py:1049 part/admin.py:42 part/models.py:970 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:120 -#: templates/js/translated/table_filters.js:508 +#: templates/js/translated/table_filters.js:512 msgid "Trackable" msgstr "" @@ -1986,10 +1995,10 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1056 part/admin.py:43 part/models.py:989 +#: common/models.py:1056 part/admin.py:43 part/models.py:990 #: part/templates/part/part_base.html:156 #: templates/js/translated/table_filters.js:42 -#: templates/js/translated/table_filters.js:512 +#: templates/js/translated/table_filters.js:516 msgid "Virtual" msgstr "" @@ -2417,7 +2426,7 @@ msgstr "" msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1461 common/models.py:1803 +#: common/models.py:1461 common/models.py:1810 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -2749,41 +2758,50 @@ msgstr "" msgid "Display part scheduling information" msgstr "" -#: common/models.py:1778 -msgid "Table String Length" +#: common/models.py:1778 part/templates/part/detail.html:61 +#: templates/js/translated/part.js:822 +msgid "Part Stocktake" msgstr "" #: common/models.py:1779 +msgid "Display part stocktake information" +msgstr "" + +#: common/models.py:1785 +msgid "Table String Length" +msgstr "" + +#: common/models.py:1786 msgid "Maximimum length limit for strings displayed in table views" msgstr "" -#: common/models.py:1843 +#: common/models.py:1850 msgid "Price break quantity" msgstr "" -#: common/models.py:1850 company/serializers.py:393 order/models.py:975 -#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1145 +#: common/models.py:1857 company/serializers.py:393 order/models.py:975 +#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1416 #: templates/js/translated/pricing.js:354 msgid "Price" msgstr "" -#: common/models.py:1851 +#: common/models.py:1858 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2011 common/models.py:2189 +#: common/models.py:2018 common/models.py:2196 msgid "Endpoint" msgstr "" -#: common/models.py:2012 +#: common/models.py:2019 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2021 +#: common/models.py:2028 msgid "Name for this webhook" msgstr "" -#: common/models.py:2026 part/admin.py:36 part/models.py:984 +#: common/models.py:2033 part/admin.py:36 part/models.py:985 #: plugin/models.py:100 templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:116 #: templates/js/translated/table_filters.js:336 @@ -2791,131 +2809,133 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:2027 +#: common/models.py:2034 msgid "Is this webhook active" msgstr "" -#: common/models.py:2041 +#: common/models.py:2048 msgid "Token" msgstr "" -#: common/models.py:2042 +#: common/models.py:2049 msgid "Token for access" msgstr "" -#: common/models.py:2049 +#: common/models.py:2056 msgid "Secret" msgstr "" -#: common/models.py:2050 +#: common/models.py:2057 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2156 +#: common/models.py:2163 msgid "Message ID" msgstr "" -#: common/models.py:2157 +#: common/models.py:2164 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2165 +#: common/models.py:2172 msgid "Host" msgstr "" -#: common/models.py:2166 +#: common/models.py:2173 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2173 +#: common/models.py:2180 msgid "Header" msgstr "" -#: common/models.py:2174 +#: common/models.py:2181 msgid "Header of this message" msgstr "" -#: common/models.py:2180 +#: common/models.py:2187 msgid "Body" msgstr "" -#: common/models.py:2181 +#: common/models.py:2188 msgid "Body of this message" msgstr "" -#: common/models.py:2190 +#: common/models.py:2197 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2195 +#: common/models.py:2202 msgid "Worked on" msgstr "" -#: common/models.py:2196 +#: common/models.py:2203 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2355 +#: common/models.py:2362 msgid "Id" msgstr "" -#: common/models.py:2361 templates/js/translated/news.js:35 +#: common/models.py:2368 templates/js/translated/news.js:35 msgid "Title" msgstr "" -#: common/models.py:2371 templates/js/translated/news.js:51 +#: common/models.py:2378 templates/js/translated/news.js:51 msgid "Published" msgstr "" -#: common/models.py:2376 templates/InvenTree/settings/plugin.html:62 +#: common/models.py:2383 templates/InvenTree/settings/plugin.html:62 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/news.js:47 msgid "Author" msgstr "" -#: common/models.py:2381 templates/js/translated/news.js:43 +#: common/models.py:2388 templates/js/translated/news.js:43 msgid "Summary" msgstr "" -#: common/models.py:2386 +#: common/models.py:2393 msgid "Read" msgstr "" -#: common/models.py:2387 +#: common/models.py:2394 msgid "Was this news item read?" msgstr "" -#: common/notifications.py:293 +#: common/notifications.py:294 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:295 +#: common/notifications.py:296 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:301 +#: common/notifications.py:302 msgid "Items Received" msgstr "" -#: common/notifications.py:303 +#: common/notifications.py:304 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:415 +#: common/notifications.py:416 msgid "Error raised by plugin" msgstr "" #: common/views.py:85 order/templates/order/order_wizard/po_upload.html:51 #: order/templates/order/purchase_order_detail.html:25 order/views.py:102 -#: part/views.py:107 templates/patterns/wizard/upload.html:37 +#: part/templates/part/import_wizard/part_upload.html:58 part/views.py:109 +#: templates/patterns/wizard/upload.html:37 msgid "Upload File" msgstr "" #: common/views.py:86 order/templates/order/order_wizard/match_fields.html:52 #: order/views.py:103 #: part/templates/part/import_wizard/ajax_match_fields.html:45 -#: part/views.py:108 templates/patterns/wizard/match_fields.html:51 +#: part/templates/part/import_wizard/match_fields.html:52 part/views.py:110 +#: templates/patterns/wizard/match_fields.html:51 msgid "Match Fields" msgstr "" @@ -2934,7 +2954,9 @@ msgstr "" #: common/views.py:509 order/templates/order/order_wizard/match_fields.html:27 #: order/templates/order/order_wizard/match_parts.html:19 #: order/templates/order/order_wizard/po_upload.html:49 +#: part/templates/part/import_wizard/match_fields.html:27 #: part/templates/part/import_wizard/match_references.html:19 +#: part/templates/part/import_wizard/part_upload.html:56 #: templates/patterns/wizard/match_fields.html:26 #: templates/patterns/wizard/upload.html:35 msgid "Previous Step" @@ -2995,7 +3017,7 @@ msgstr "" msgid "Link to external company information" msgstr "" -#: company/models.py:140 part/models.py:878 +#: company/models.py:140 part/models.py:879 msgid "Image" msgstr "" @@ -3028,8 +3050,8 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:153 company/serializers.py:399 -#: company/templates/company/company_base.html:107 part/models.py:2762 -#: part/serializers.py:154 part/serializers.py:182 stock/serializers.py:182 +#: company/templates/company/company_base.html:107 part/models.py:2780 +#: part/serializers.py:156 part/serializers.py:184 stock/serializers.py:182 #: templates/InvenTree/settings/pricing.html:64 msgid "Currency" msgstr "" @@ -3055,12 +3077,12 @@ msgstr "" #: templates/js/translated/company.js:433 #: templates/js/translated/company.js:534 #: templates/js/translated/company.js:669 -#: templates/js/translated/company.js:957 templates/js/translated/part.js:238 +#: templates/js/translated/company.js:957 templates/js/translated/part.js:241 #: templates/js/translated/table_filters.js:439 msgid "Manufacturer" msgstr "" -#: company/models.py:269 templates/js/translated/part.js:239 +#: company/models.py:269 templates/js/translated/part.js:242 msgid "Select manufacturer" msgstr "" @@ -3070,11 +3092,11 @@ msgstr "" #: templates/js/translated/company.js:533 #: templates/js/translated/company.js:685 #: templates/js/translated/company.js:976 templates/js/translated/order.js:2286 -#: templates/js/translated/part.js:249 templates/js/translated/part.js:1067 +#: templates/js/translated/part.js:252 templates/js/translated/part.js:1338 msgid "MPN" msgstr "" -#: company/models.py:276 templates/js/translated/part.js:250 +#: company/models.py:276 templates/js/translated/part.js:253 msgid "Manufacturer Part Number" msgstr "" @@ -3100,8 +3122,8 @@ msgstr "" #: company/models.py:370 #: report/templates/report/inventree_test_report_base.html:95 #: stock/models.py:2156 templates/js/translated/company.js:582 -#: templates/js/translated/company.js:800 templates/js/translated/part.js:889 -#: templates/js/translated/stock.js:1399 +#: templates/js/translated/company.js:800 templates/js/translated/part.js:1160 +#: templates/js/translated/stock.js:1398 msgid "Value" msgstr "" @@ -3109,10 +3131,10 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:377 part/admin.py:26 part/models.py:951 -#: part/models.py:3128 part/templates/part/part_base.html:286 -#: templates/InvenTree/settings/settings.html:349 -#: templates/js/translated/company.js:806 templates/js/translated/part.js:895 +#: company/models.py:377 part/admin.py:26 part/models.py:952 +#: part/models.py:3206 part/templates/part/part_base.html:286 +#: templates/InvenTree/settings/settings.html:350 +#: templates/js/translated/company.js:806 templates/js/translated/part.js:1166 msgid "Units" msgstr "" @@ -3132,24 +3154,24 @@ msgstr "" #: templates/js/translated/company.js:304 #: templates/js/translated/company.js:437 #: templates/js/translated/company.js:930 templates/js/translated/order.js:2017 -#: templates/js/translated/part.js:219 templates/js/translated/part.js:1035 +#: templates/js/translated/part.js:222 templates/js/translated/part.js:1306 #: templates/js/translated/pricing.js:231 #: templates/js/translated/table_filters.js:443 msgid "Supplier" msgstr "" -#: company/models.py:498 templates/js/translated/part.js:220 +#: company/models.py:498 templates/js/translated/part.js:223 msgid "Select supplier" msgstr "" #: company/models.py:503 company/templates/company/supplier_part.html:146 #: part/bom.py:253 part/bom.py:281 templates/js/translated/company.js:303 -#: templates/js/translated/order.js:2273 templates/js/translated/part.js:230 -#: templates/js/translated/part.js:1053 templates/js/translated/pricing.js:243 +#: templates/js/translated/order.js:2273 templates/js/translated/part.js:233 +#: templates/js/translated/part.js:1324 templates/js/translated/pricing.js:243 msgid "SKU" msgstr "" -#: company/models.py:504 templates/js/translated/part.js:231 +#: company/models.py:504 templates/js/translated/part.js:234 msgid "Supplier stock keeping unit" msgstr "" @@ -3166,24 +3188,25 @@ msgid "Supplier part description" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:181 -#: part/admin.py:225 part/models.py:3381 part/templates/part/upload_bom.html:59 +#: part/admin.py:258 part/models.py:3459 part/templates/part/upload_bom.html:59 +#: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:397 msgid "Note" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "base cost" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:534 company/templates/company/supplier_part.html:167 #: stock/admin.py:101 stock/models.py:682 #: stock/templates/stock/item_base.html:243 -#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2016 +#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2011 msgid "Packaging" msgstr "" @@ -3196,7 +3219,7 @@ msgstr "" #: templates/js/translated/company.js:997 templates/js/translated/order.js:826 #: templates/js/translated/order.js:1253 templates/js/translated/order.js:1508 #: templates/js/translated/order.js:2317 templates/js/translated/order.js:2334 -#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1137 +#: templates/js/translated/part.js:1356 templates/js/translated/part.js:1408 msgid "Pack Quantity" msgstr "" @@ -3204,7 +3227,7 @@ msgstr "" msgid "Unit quantity supplied in a single pack" msgstr "" -#: company/models.py:544 part/models.py:1863 +#: company/models.py:544 part/models.py:1869 msgid "multiple" msgstr "" @@ -3216,8 +3239,8 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:1118 templates/js/translated/build.js:1883 -#: templates/js/translated/build.js:2770 templates/js/translated/part.js:623 -#: templates/js/translated/part.js:626 +#: templates/js/translated/build.js:2770 templates/js/translated/part.js:626 +#: templates/js/translated/part.js:629 #: templates/js/translated/table_filters.js:206 msgid "Available" msgstr "" @@ -3300,7 +3323,7 @@ msgstr "" #: stock/templates/stock/item_base.html:399 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:429 templates/js/translated/order.js:2827 -#: templates/js/translated/stock.js:2607 +#: templates/js/translated/stock.js:2602 #: templates/js/translated/table_filters.js:447 msgid "Customer" msgstr "" @@ -3314,7 +3337,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:206 -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:525 msgid "Remove Image" msgstr "" @@ -3323,19 +3346,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:209 -#: part/templates/part/part_base.html:514 +#: part/templates/part/part_base.html:528 #: templates/InvenTree/settings/user.html:87 #: templates/InvenTree/settings/user.html:149 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:238 -#: part/templates/part/part_base.html:543 +#: part/templates/part/part_base.html:557 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:253 -#: part/templates/part/part_base.html:598 +#: part/templates/part/part_base.html:612 msgid "Download Image" msgstr "" @@ -3351,7 +3374,7 @@ msgstr "" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:357 +#: part/templates/part/detail.html:380 msgid "New Supplier Part" msgstr "" @@ -3380,7 +3403,7 @@ msgstr "" msgid "Create new manufacturer part" msgstr "" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:387 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:410 msgid "New Manufacturer Part" msgstr "" @@ -3394,9 +3417,9 @@ msgstr "" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:35 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:35 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:200 -#: templates/InvenTree/settings/sidebar.html:49 +#: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:293 templates/navbar.html:50 #: users/models.py:42 msgid "Purchase Orders" @@ -3417,9 +3440,9 @@ msgstr "" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:39 +#: part/templates/part/detail.html:130 part/templates/part/part_sidebar.html:39 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:220 -#: templates/InvenTree/settings/sidebar.html:51 +#: templates/InvenTree/settings/sidebar.html:53 #: templates/js/translated/search.js:317 templates/navbar.html:61 #: users/models.py:43 msgid "Sales Orders" @@ -3451,7 +3474,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:221 -#: part/templates/part/detail.html:87 part/templates/part/part_base.html:85 +#: part/templates/part/detail.html:110 part/templates/part/part_base.html:85 msgid "Order part" msgstr "" @@ -3482,28 +3505,28 @@ msgid "Suppliers" msgstr "" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:368 +#: part/templates/part/detail.html:391 msgid "Delete supplier parts" msgstr "" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:369 part/templates/part/detail.html:399 -#: templates/js/translated/forms.js:455 templates/js/translated/helpers.js:38 -#: templates/js/translated/part.js:351 templates/js/translated/stock.js:188 -#: users/models.py:224 +#: part/templates/part/detail.html:392 part/templates/part/detail.html:422 +#: templates/js/translated/forms.js:458 templates/js/translated/helpers.js:38 +#: templates/js/translated/part.js:354 templates/js/translated/stock.js:187 +#: users/models.py:225 msgid "Delete" msgstr "" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:184 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:207 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:189 +#: part/templates/part/detail.html:212 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:62 msgid "New Parameter" @@ -3514,7 +3537,7 @@ msgid "Delete parameters" msgstr "" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:825 +#: part/templates/part/detail.html:865 msgid "Add Parameter" msgstr "" @@ -3538,7 +3561,7 @@ msgstr "" #: company/templates/company/supplier_part.html:24 stock/models.py:665 #: stock/templates/stock/item_base.html:236 #: templates/js/translated/company.js:946 templates/js/translated/order.js:1173 -#: templates/js/translated/stock.js:1974 +#: templates/js/translated/stock.js:1969 msgid "Supplier Part" msgstr "" @@ -3578,7 +3601,7 @@ msgstr "" #: company/templates/company/supplier_part.html:56 #: company/templates/company/supplier_part.html:57 #: company/templates/company/supplier_part.html:222 -#: part/templates/part/detail.html:88 +#: part/templates/part/detail.html:111 msgid "Order Part" msgstr "" @@ -3630,7 +3653,7 @@ msgstr "" #: company/templates/company/supplier_part.html:204 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:198 -#: templates/js/translated/stock.js:467 +#: templates/js/translated/stock.js:466 msgid "New Stock Item" msgstr "" @@ -3662,10 +3685,10 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 -#: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/part.js:777 templates/js/translated/part.js:1378 -#: templates/js/translated/part.js:1534 templates/js/translated/stock.js:994 -#: templates/js/translated/stock.js:1799 templates/navbar.html:31 +#: templates/InvenTree/settings/sidebar.html:47 +#: templates/js/translated/part.js:1048 templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1805 templates/js/translated/stock.js:993 +#: templates/js/translated/stock.js:1794 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3680,7 +3703,7 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:29 #: part/templates/part/part_sidebar.html:30 -#: templates/InvenTree/settings/sidebar.html:35 +#: templates/InvenTree/settings/sidebar.html:37 msgid "Pricing" msgstr "" @@ -3692,7 +3715,7 @@ msgstr "" #: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:155 templates/js/translated/search.js:225 -#: templates/js/translated/stock.js:2484 users/models.py:40 +#: templates/js/translated/stock.js:2479 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3801,9 +3824,9 @@ msgstr "" #: stock/templates/stock/item_base.html:182 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:619 templates/js/translated/order.js:1174 -#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1012 -#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1954 -#: templates/js/translated/stock.js:2588 +#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1283 +#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1949 +#: templates/js/translated/stock.js:2583 msgid "Purchase Order" msgstr "" @@ -3973,7 +3996,7 @@ msgstr "" #: order/models.py:1046 order/templates/order/order_base.html:178 #: templates/js/translated/order.js:1679 templates/js/translated/order.js:2404 -#: templates/js/translated/part.js:1129 templates/js/translated/part.js:1161 +#: templates/js/translated/part.js:1400 templates/js/translated/part.js:1432 #: templates/js/translated/table_filters.js:358 msgid "Received" msgstr "" @@ -3984,7 +4007,7 @@ msgstr "" #: order/models.py:1054 stock/models.py:800 stock/serializers.py:173 #: stock/templates/stock/item_base.html:189 -#: templates/js/translated/stock.js:2005 +#: templates/js/translated/stock.js:2000 msgid "Purchase Price" msgstr "" @@ -4350,18 +4373,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:9 #: part/templates/part/import_wizard/ajax_match_fields.html:9 +#: part/templates/part/import_wizard/match_fields.html:9 #: templates/patterns/wizard/match_fields.html:8 msgid "Missing selections for the following required columns" msgstr "" #: order/templates/order/order_wizard/match_fields.html:20 #: part/templates/part/import_wizard/ajax_match_fields.html:20 +#: part/templates/part/import_wizard/match_fields.html:20 #: templates/patterns/wizard/match_fields.html:19 msgid "Duplicate selections found, see below. Fix them then retry submitting." msgstr "" #: order/templates/order/order_wizard/match_fields.html:29 #: order/templates/order/order_wizard/match_parts.html:21 +#: part/templates/part/import_wizard/match_fields.html:29 #: part/templates/part/import_wizard/match_references.html:21 #: templates/patterns/wizard/match_fields.html:28 msgid "Submit Selections" @@ -4369,18 +4395,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:35 #: part/templates/part/import_wizard/ajax_match_fields.html:28 +#: part/templates/part/import_wizard/match_fields.html:35 #: templates/patterns/wizard/match_fields.html:34 msgid "File Fields" msgstr "" #: order/templates/order/order_wizard/match_fields.html:42 #: part/templates/part/import_wizard/ajax_match_fields.html:35 +#: part/templates/part/import_wizard/match_fields.html:42 #: templates/patterns/wizard/match_fields.html:41 msgid "Remove column" msgstr "" #: order/templates/order/order_wizard/match_fields.html:60 #: part/templates/part/import_wizard/ajax_match_fields.html:53 +#: part/templates/part/import_wizard/match_fields.html:60 #: templates/patterns/wizard/match_fields.html:59 msgid "Duplicate selection" msgstr "" @@ -4389,12 +4418,13 @@ msgstr "" #: order/templates/order/order_wizard/match_parts.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: 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:102 templates/js/translated/build.js:485 #: templates/js/translated/build.js:641 templates/js/translated/build.js:2088 #: templates/js/translated/order.js:1122 templates/js/translated/order.js:1624 -#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:657 -#: templates/js/translated/stock.js:825 +#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:824 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4429,6 +4459,7 @@ msgstr "" #: order/templates/order/order_wizard/po_upload.html:27 #: part/templates/part/import_wizard/ajax_part_upload.html:10 +#: part/templates/part/import_wizard/part_upload.html:26 #: templates/patterns/wizard/upload.html:13 #, python-format msgid "Step %(step)s of %(count)s" @@ -4567,12 +4598,12 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:19 part/admin.py:219 part/models.py:3262 stock/admin.py:84 +#: part/admin.py:19 part/admin.py:252 part/models.py:3340 stock/admin.py:84 #: templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/admin.py:20 part/admin.py:221 part/models.py:3266 stock/admin.py:85 +#: part/admin.py:20 part/admin.py:254 part/models.py:3344 stock/admin.py:85 msgid "Part Name" msgstr "" @@ -4580,32 +4611,32 @@ msgstr "" msgid "Part Description" msgstr "" -#: part/admin.py:22 part/models.py:852 part/templates/part/part_base.html:272 -#: templates/js/translated/part.js:763 templates/js/translated/part.js:1491 -#: templates/js/translated/stock.js:1765 +#: part/admin.py:22 part/models.py:853 part/templates/part/part_base.html:272 +#: templates/js/translated/part.js:1034 templates/js/translated/part.js:1762 +#: templates/js/translated/stock.js:1760 msgid "IPN" msgstr "" -#: part/admin.py:23 part/models.py:860 part/templates/part/part_base.html:279 -#: report/models.py:171 templates/js/translated/part.js:768 +#: part/admin.py:23 part/models.py:861 part/templates/part/part_base.html:279 +#: report/models.py:171 templates/js/translated/part.js:1039 msgid "Revision" msgstr "" -#: part/admin.py:24 part/admin.py:145 part/models.py:838 +#: part/admin.py:24 part/admin.py:178 part/models.py:839 #: part/templates/part/category.html:87 part/templates/part/part_base.html:300 msgid "Keywords" msgstr "" -#: part/admin.py:28 part/admin.py:139 +#: part/admin.py:28 part/admin.py:172 #: templates/js/translated/model_renderers.js:338 msgid "Category ID" msgstr "" -#: part/admin.py:29 part/admin.py:140 +#: part/admin.py:29 part/admin.py:173 msgid "Category Name" msgstr "" -#: part/admin.py:30 part/admin.py:144 +#: part/admin.py:30 part/admin.py:177 msgid "Default Location ID" msgstr "" @@ -4613,7 +4644,7 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:33 part/models.py:944 part/templates/part/part_base.html:206 +#: part/admin.py:33 part/models.py:945 part/templates/part/part_base.html:206 msgid "Minimum Stock" msgstr "" @@ -4625,8 +4656,8 @@ msgstr "" #: part/admin.py:48 part/bom.py:145 part/templates/part/part_base.html:213 #: templates/js/translated/bom.js:1156 templates/js/translated/build.js:1935 -#: templates/js/translated/part.js:613 templates/js/translated/part.js:633 -#: templates/js/translated/part.js:1381 templates/js/translated/part.js:1559 +#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 +#: templates/js/translated/part.js:1652 templates/js/translated/part.js:1830 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4642,115 +4673,115 @@ msgid "Allocated" msgstr "" #: part/admin.py:51 part/templates/part/part_base.html:244 -#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 -#: templates/js/translated/part.js:1385 templates/js/translated/part.js:1566 +#: templates/js/translated/part.js:619 templates/js/translated/part.js:639 +#: templates/js/translated/part.js:1656 templates/js/translated/part.js:1837 msgid "Building" msgstr "" -#: part/admin.py:52 part/models.py:2846 +#: part/admin.py:52 part/models.py:2864 msgid "Minimum Cost" msgstr "" -#: part/admin.py:53 part/models.py:2852 +#: part/admin.py:53 part/models.py:2870 msgid "Maximum Cost" msgstr "" -#: part/admin.py:142 part/admin.py:216 stock/admin.py:26 stock/admin.py:98 +#: part/admin.py:175 part/admin.py:249 stock/admin.py:26 stock/admin.py:98 msgid "Parent ID" msgstr "" -#: part/admin.py:143 part/admin.py:218 stock/admin.py:27 +#: part/admin.py:176 part/admin.py:251 stock/admin.py:27 msgid "Parent Name" msgstr "" -#: part/admin.py:146 part/templates/part/category.html:81 +#: part/admin.py:179 part/templates/part/category.html:81 #: part/templates/part/category.html:94 msgid "Category Path" msgstr "" -#: part/admin.py:149 part/models.py:382 part/templates/part/cat_link.html:3 +#: part/admin.py:182 part/models.py:383 part/templates/part/cat_link.html:3 #: part/templates/part/category.html:23 part/templates/part/category.html:134 #: part/templates/part/category.html:154 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:84 -#: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:2065 templates/js/translated/search.js:146 +#: templates/InvenTree/settings/sidebar.html:43 +#: templates/js/translated/part.js:2346 templates/js/translated/search.js:146 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" -#: part/admin.py:211 +#: part/admin.py:244 msgid "BOM Level" msgstr "" -#: part/admin.py:213 +#: part/admin.py:246 msgid "BOM Item ID" msgstr "" -#: part/admin.py:217 +#: part/admin.py:250 msgid "Parent IPN" msgstr "" -#: part/admin.py:220 part/models.py:3270 +#: part/admin.py:253 part/models.py:3348 msgid "Part IPN" msgstr "" -#: part/admin.py:226 templates/js/translated/pricing.js:91 +#: part/admin.py:259 templates/js/translated/pricing.js:91 #: templates/js/translated/pricing.js:732 msgid "Minimum Price" msgstr "" -#: part/admin.py:227 templates/js/translated/pricing.js:86 +#: part/admin.py:260 templates/js/translated/pricing.js:86 #: templates/js/translated/pricing.js:740 msgid "Maximum Price" msgstr "" -#: part/api.py:536 +#: part/api.py:538 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:556 +#: part/api.py:558 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:574 +#: part/api.py:576 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:660 +#: part/api.py:662 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:818 +#: part/api.py:820 msgid "Valid" msgstr "" -#: part/api.py:819 +#: part/api.py:821 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:825 +#: part/api.py:827 msgid "This option must be selected" msgstr "" -#: part/api.py:1265 +#: part/api.py:1281 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1269 +#: part/api.py:1285 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1284 +#: part/api.py:1300 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1315 part/api.py:1319 part/api.py:1334 part/api.py:1338 +#: part/api.py:1331 part/api.py:1335 part/api.py:1350 part/api.py:1354 msgid "This field is required" msgstr "" -#: part/bom.py:142 part/models.py:116 part/models.py:887 -#: part/templates/part/category.html:109 part/templates/part/part_base.html:360 +#: part/bom.py:142 part/models.py:116 part/models.py:888 +#: part/templates/part/category.html:109 part/templates/part/part_base.html:374 msgid "Default Location" msgstr "" @@ -4801,7 +4832,7 @@ msgstr "" msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:159 part/models.py:3211 part/templates/part/category.html:16 +#: part/models.py:159 part/models.py:3289 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -4812,423 +4843,459 @@ msgstr "" msgid "Part Categories" msgstr "" -#: part/models.py:468 +#: part/models.py:469 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:538 part/models.py:550 +#: part/models.py:539 part/models.py:551 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:640 +#: part/models.py:641 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:771 +#: part/models.py:772 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:776 +#: part/models.py:777 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:790 +#: part/models.py:791 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:808 part/models.py:3267 +#: part/models.py:809 part/models.py:3345 msgid "Part name" msgstr "" -#: part/models.py:815 +#: part/models.py:816 msgid "Is Template" msgstr "" -#: part/models.py:816 +#: part/models.py:817 msgid "Is this part a template part?" msgstr "" -#: part/models.py:826 +#: part/models.py:827 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:827 +#: part/models.py:828 msgid "Variant Of" msgstr "" -#: part/models.py:833 +#: part/models.py:834 msgid "Part description" msgstr "" -#: part/models.py:839 +#: part/models.py:840 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:846 part/models.py:2966 part/models.py:3210 +#: part/models.py:847 part/models.py:3044 part/models.py:3288 #: part/templates/part/part_base.html:263 -#: templates/InvenTree/settings/settings.html:229 +#: templates/InvenTree/settings/settings.html:230 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1513 templates/js/translated/part.js:1770 +#: templates/js/translated/part.js:1784 templates/js/translated/part.js:2051 msgid "Category" msgstr "" -#: part/models.py:847 +#: part/models.py:848 msgid "Part category" msgstr "" -#: part/models.py:853 +#: part/models.py:854 msgid "Internal Part Number" msgstr "" -#: part/models.py:859 +#: part/models.py:860 msgid "Part revision or version number" msgstr "" -#: part/models.py:885 +#: part/models.py:886 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:930 part/templates/part/part_base.html:369 +#: part/models.py:931 part/templates/part/part_base.html:383 msgid "Default Supplier" msgstr "" -#: part/models.py:931 +#: part/models.py:932 msgid "Default supplier part" msgstr "" -#: part/models.py:938 +#: part/models.py:939 msgid "Default Expiry" msgstr "" -#: part/models.py:939 +#: part/models.py:940 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:945 +#: part/models.py:946 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:952 +#: part/models.py:953 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:958 +#: part/models.py:959 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:964 +#: part/models.py:965 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:970 +#: part/models.py:971 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:975 +#: part/models.py:976 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:980 +#: part/models.py:981 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:985 +#: part/models.py:986 msgid "Is this part active?" msgstr "" -#: part/models.py:990 +#: part/models.py:991 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:992 +#: part/models.py:993 msgid "Part notes" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "BOM checksum" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:997 +#: part/models.py:998 msgid "BOM checked by" msgstr "" -#: part/models.py:999 +#: part/models.py:1000 msgid "BOM checked date" msgstr "" -#: part/models.py:1003 +#: part/models.py:1004 msgid "Creation User" msgstr "" -#: part/models.py:1863 +#: part/models.py:1010 part/templates/part/part_base.html:345 +#: stock/templates/stock/item_base.html:445 +#: templates/js/translated/part.js:1901 +msgid "Last Stocktake" +msgstr "" + +#: part/models.py:1869 msgid "Sell multiple" msgstr "" -#: part/models.py:2763 +#: part/models.py:2781 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:2768 +#: part/models.py:2786 templates/js/translated/part.js:806 msgid "Updated" msgstr "" -#: part/models.py:2769 +#: part/models.py:2787 msgid "Timestamp of last pricing update" msgstr "" -#: part/models.py:2786 +#: part/models.py:2804 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:2787 +#: part/models.py:2805 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:2792 +#: part/models.py:2810 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:2793 +#: part/models.py:2811 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:2798 +#: part/models.py:2816 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:2799 +#: part/models.py:2817 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:2804 +#: part/models.py:2822 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:2805 +#: part/models.py:2823 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:2810 +#: part/models.py:2828 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:2811 +#: part/models.py:2829 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:2816 +#: part/models.py:2834 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:2817 +#: part/models.py:2835 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:2822 +#: part/models.py:2840 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:2823 +#: part/models.py:2841 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:2828 +#: part/models.py:2846 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:2829 +#: part/models.py:2847 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:2834 +#: part/models.py:2852 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:2835 +#: part/models.py:2853 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:2840 +#: part/models.py:2858 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:2841 +#: part/models.py:2859 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:2847 +#: part/models.py:2865 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:2853 +#: part/models.py:2871 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:2858 +#: part/models.py:2876 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:2859 +#: part/models.py:2877 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:2864 +#: part/models.py:2882 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:2865 +#: part/models.py:2883 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:2870 +#: part/models.py:2888 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:2871 +#: part/models.py:2889 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:2876 +#: part/models.py:2894 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:2877 +#: part/models.py:2895 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3013 +#: part/models.py:2913 +msgid "Part for stocktake" +msgstr "" + +#: part/models.py:2920 +msgid "Total available stock at time of stocktake" +msgstr "" + +#: part/models.py:2924 part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:63 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:2043 templates/js/translated/part.js:887 +#: templates/js/translated/pricing.js:537 +#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2511 +msgid "Date" +msgstr "" + +#: part/models.py:2925 +msgid "Date stocktake was performed" +msgstr "" + +#: part/models.py:2933 +msgid "Additional notes" +msgstr "" + +#: part/models.py:2941 +msgid "User who performed this stocktake" +msgstr "" + +#: part/models.py:3091 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3030 +#: part/models.py:3108 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:3050 templates/js/translated/part.js:2116 -#: templates/js/translated/stock.js:1379 +#: part/models.py:3128 templates/js/translated/part.js:2397 +#: templates/js/translated/stock.js:1378 msgid "Test Name" msgstr "" -#: part/models.py:3051 +#: part/models.py:3129 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3056 +#: part/models.py:3134 msgid "Test Description" msgstr "" -#: part/models.py:3057 +#: part/models.py:3135 msgid "Enter description for this test" msgstr "" -#: part/models.py:3062 templates/js/translated/part.js:2125 +#: part/models.py:3140 templates/js/translated/part.js:2406 #: templates/js/translated/table_filters.js:322 msgid "Required" msgstr "" -#: part/models.py:3063 +#: part/models.py:3141 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3068 templates/js/translated/part.js:2133 +#: part/models.py:3146 templates/js/translated/part.js:2414 msgid "Requires Value" msgstr "" -#: part/models.py:3069 +#: part/models.py:3147 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3074 templates/js/translated/part.js:2140 +#: part/models.py:3152 templates/js/translated/part.js:2421 msgid "Requires Attachment" msgstr "" -#: part/models.py:3075 +#: part/models.py:3153 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3116 +#: part/models.py:3194 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3124 +#: part/models.py:3202 msgid "Parameter Name" msgstr "" -#: part/models.py:3128 +#: part/models.py:3206 msgid "Parameter Units" msgstr "" -#: part/models.py:3133 +#: part/models.py:3211 msgid "Parameter description" msgstr "" -#: part/models.py:3166 +#: part/models.py:3244 msgid "Parent Part" msgstr "" -#: part/models.py:3168 part/models.py:3216 part/models.py:3217 -#: templates/InvenTree/settings/settings.html:224 +#: part/models.py:3246 part/models.py:3294 part/models.py:3295 +#: templates/InvenTree/settings/settings.html:225 msgid "Parameter Template" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Data" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Parameter Value" msgstr "" -#: part/models.py:3221 templates/InvenTree/settings/settings.html:233 +#: part/models.py:3299 templates/InvenTree/settings/settings.html:234 msgid "Default Value" msgstr "" -#: part/models.py:3222 +#: part/models.py:3300 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3259 +#: part/models.py:3337 msgid "Part ID or part name" msgstr "" -#: part/models.py:3263 +#: part/models.py:3341 msgid "Unique part ID value" msgstr "" -#: part/models.py:3271 +#: part/models.py:3349 msgid "Part IPN value" msgstr "" -#: part/models.py:3274 +#: part/models.py:3352 msgid "Level" msgstr "" -#: part/models.py:3275 +#: part/models.py:3353 msgid "BOM level" msgstr "" -#: part/models.py:3344 +#: part/models.py:3422 msgid "Select parent part" msgstr "" -#: part/models.py:3352 +#: part/models.py:3430 msgid "Sub part" msgstr "" -#: part/models.py:3353 +#: part/models.py:3431 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:3359 +#: part/models.py:3437 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:3363 part/templates/part/upload_bom.html:58 +#: part/models.py:3441 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:933 templates/js/translated/bom.js:986 #: templates/js/translated/build.js:1868 #: templates/js/translated/table_filters.js:84 @@ -5236,189 +5303,189 @@ msgstr "" msgid "Optional" msgstr "" -#: part/models.py:3364 +#: part/models.py:3442 msgid "This BOM item is optional" msgstr "" -#: part/models.py:3369 templates/js/translated/bom.js:929 +#: part/models.py:3447 templates/js/translated/bom.js:929 #: templates/js/translated/bom.js:995 templates/js/translated/build.js:1859 #: templates/js/translated/table_filters.js:88 msgid "Consumable" msgstr "" -#: part/models.py:3370 +#: part/models.py:3448 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:3374 part/templates/part/upload_bom.html:55 +#: part/models.py:3452 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:3375 +#: part/models.py:3453 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:3378 +#: part/models.py:3456 msgid "BOM item reference" msgstr "" -#: part/models.py:3381 +#: part/models.py:3459 msgid "BOM item notes" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "Checksum" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "BOM line checksum" msgstr "" -#: part/models.py:3387 part/templates/part/upload_bom.html:57 +#: part/models.py:3465 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1012 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:108 msgid "Inherited" msgstr "" -#: part/models.py:3388 +#: part/models.py:3466 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:3393 part/templates/part/upload_bom.html:56 +#: part/models.py:3471 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1004 msgid "Allow Variants" msgstr "" -#: part/models.py:3394 +#: part/models.py:3472 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:3480 stock/models.py:558 +#: part/models.py:3558 stock/models.py:558 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:3489 part/models.py:3491 +#: part/models.py:3567 part/models.py:3569 msgid "Sub part must be specified" msgstr "" -#: part/models.py:3618 +#: part/models.py:3696 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:3639 +#: part/models.py:3717 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:3652 +#: part/models.py:3730 msgid "Parent BOM item" msgstr "" -#: part/models.py:3660 +#: part/models.py:3738 msgid "Substitute part" msgstr "" -#: part/models.py:3675 +#: part/models.py:3753 msgid "Part 1" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Part 2" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Select Related Part" msgstr "" -#: part/models.py:3697 +#: part/models.py:3775 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:3701 +#: part/models.py:3779 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:155 part/serializers.py:183 stock/serializers.py:183 +#: part/serializers.py:157 part/serializers.py:185 stock/serializers.py:183 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:543 +#: part/serializers.py:584 msgid "Update" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:585 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:854 +#: part/serializers.py:895 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:862 +#: part/serializers.py:903 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:863 +#: part/serializers.py:904 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:868 +#: part/serializers.py:909 msgid "Include Inherited" msgstr "" -#: part/serializers.py:869 +#: part/serializers.py:910 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:874 +#: part/serializers.py:915 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:875 +#: part/serializers.py:916 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:921 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:881 +#: part/serializers.py:922 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:962 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:922 +#: part/serializers.py:963 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:952 +#: part/serializers.py:993 msgid "No part column specified" msgstr "" -#: part/serializers.py:995 +#: part/serializers.py:1036 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:998 +#: part/serializers.py:1039 msgid "No matching part found" msgstr "" -#: part/serializers.py:1001 +#: part/serializers.py:1042 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1010 +#: part/serializers.py:1051 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1059 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1039 +#: part/serializers.py:1080 msgid "At least one BOM item is required" msgstr "" @@ -5450,7 +5517,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:267 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:290 msgid "BOM actions" msgstr "" @@ -5507,8 +5574,8 @@ msgstr "" msgid "New Part" msgstr "" -#: part/templates/part/category.html:169 part/templates/part/detail.html:366 -#: part/templates/part/detail.html:397 +#: part/templates/part/category.html:169 part/templates/part/detail.html:389 +#: part/templates/part/detail.html:420 msgid "Options" msgstr "" @@ -5556,7 +5623,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:404 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:407 msgid "Duplicate Part" msgstr "" @@ -5593,118 +5660,128 @@ msgstr "" msgid "Refresh" msgstr "" -#: part/templates/part/detail.html:59 +#: part/templates/part/detail.html:65 +msgid "Add stocktake information" +msgstr "" + +#: part/templates/part/detail.html:66 part/templates/part/part_sidebar.html:49 +#: stock/admin.py:107 templates/js/translated/stock.js:1905 +msgid "Stocktake" +msgstr "" + +#: part/templates/part/detail.html:82 msgid "Part Test Templates" msgstr "" -#: part/templates/part/detail.html:64 +#: part/templates/part/detail.html:87 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:144 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:141 +#: part/templates/part/detail.html:164 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:156 +#: part/templates/part/detail.html:179 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:160 +#: part/templates/part/detail.html:183 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:161 +#: part/templates/part/detail.html:184 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:188 +#: part/templates/part/detail.html:211 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:225 part/templates/part/part_sidebar.html:52 +#: part/templates/part/detail.html:248 part/templates/part/part_sidebar.html:57 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:229 part/templates/part/detail.html:230 +#: part/templates/part/detail.html:252 part/templates/part/detail.html:253 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:250 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:273 part/templates/part/part_sidebar.html:17 +#: report/templates/report/inventree_bill_of_materials_report.html:100 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:255 +#: part/templates/part/detail.html:278 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:259 templates/js/translated/bom.js:309 +#: part/templates/part/detail.html:282 templates/js/translated/bom.js:309 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:261 +#: part/templates/part/detail.html:284 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:271 +#: part/templates/part/detail.html:294 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:272 templates/js/translated/part.js:276 +#: part/templates/part/detail.html:295 templates/js/translated/part.js:279 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:273 +#: part/templates/part/detail.html:296 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:278 part/templates/part/detail.html:279 +#: part/templates/part/detail.html:301 part/templates/part/detail.html:302 #: templates/js/translated/bom.js:1268 templates/js/translated/bom.js:1269 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:292 +#: part/templates/part/detail.html:315 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:310 +#: part/templates/part/detail.html:333 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:337 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:360 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:353 +#: part/templates/part/detail.html:376 msgid "Part Suppliers" msgstr "" -#: part/templates/part/detail.html:383 +#: part/templates/part/detail.html:406 msgid "Part Manufacturers" msgstr "" -#: part/templates/part/detail.html:399 +#: part/templates/part/detail.html:422 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:696 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:704 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:796 msgid "Add Test Result Template" msgstr "" #: part/templates/part/import_wizard/ajax_part_upload.html:29 #: part/templates/part/import_wizard/part_upload.html:14 -msgid "Unsuffitient privileges." +msgid "Insufficient privileges." msgstr "" #: part/templates/part/import_wizard/part_upload.html:8 @@ -5715,6 +5792,34 @@ msgstr "" msgid "Import Parts from File" msgstr "" +#: part/templates/part/import_wizard/part_upload.html:31 +msgid "Requirements for part import" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "The part import file must contain the required named columns as provided in the " +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:89 +msgid "Download Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:92 +#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 +#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 +msgid "Format" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:93 +#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 +#: templates/js/translated/order.js:999 +msgid "Select file format" +msgstr "" + #: part/templates/part/part_app_base.html:12 msgid "Part List" msgstr "" @@ -5804,12 +5909,12 @@ msgstr "" #: templates/js/translated/company.js:660 #: templates/js/translated/company.js:921 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:677 templates/js/translated/part.js:755 +#: templates/js/translated/part.js:680 templates/js/translated/part.js:1026 msgid "Inactive" msgstr "" #: part/templates/part/part_base.html:165 -#: part/templates/part/part_base.html:666 +#: part/templates/part/part_base.html:680 msgid "Show Part Details" msgstr "" @@ -5837,38 +5942,38 @@ msgid "Minimum stock level" msgstr "" #: part/templates/part/part_base.html:330 templates/js/translated/bom.js:1032 -#: templates/js/translated/part.js:798 templates/js/translated/part.js:1604 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:1875 #: templates/js/translated/pricing.js:124 #: templates/js/translated/pricing.js:762 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:345 +#: part/templates/part/part_base.html:359 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:349 +#: part/templates/part/part_base.html:363 #: stock/templates/stock/item_base.html:331 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:449 +#: part/templates/part/part_base.html:463 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:495 +#: part/templates/part/part_base.html:509 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:512 +#: part/templates/part/part_base.html:526 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:564 +#: part/templates/part/part_base.html:578 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:660 +#: part/templates/part/part_base.html:674 msgid "Hide Part Details" msgstr "" @@ -5920,15 +6025,6 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" -#: part/templates/part/part_scheduling.html:13 -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:63 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:2043 templates/js/translated/pricing.js:537 -#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2516 -msgid "Date" -msgstr "" - #: part/templates/part/part_scheduling.html:14 msgid "Scheduled Quantity" msgstr "" @@ -5941,7 +6037,7 @@ msgstr "" msgid "Scheduling" msgstr "" -#: part/templates/part/part_sidebar.html:48 +#: part/templates/part/part_sidebar.html:53 msgid "Test Templates" msgstr "" @@ -5960,7 +6056,7 @@ msgstr "" #: part/templates/part/prices.html:25 stock/admin.py:106 #: stock/templates/stock/item_base.html:440 #: templates/js/translated/company.js:1039 -#: templates/js/translated/stock.js:1940 +#: templates/js/translated/stock.js:1935 msgid "Last Updated" msgstr "" @@ -6023,8 +6119,8 @@ msgstr "" msgid "Add Sell Price Break" msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:639 -#: templates/js/translated/part.js:1373 templates/js/translated/part.js:1375 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:1644 templates/js/translated/part.js:1646 msgid "No Stock" msgstr "" @@ -6087,27 +6183,32 @@ msgstr "" msgid "{title} v{version}" msgstr "" -#: part/views.py:109 +#: part/views.py:111 msgid "Match References" msgstr "" -#: part/views.py:354 +#: part/views.py:239 +#, python-brace-format +msgid "Can't import part {name} because there is no category assigned" +msgstr "" + +#: part/views.py:378 msgid "Part QR Code" msgstr "" -#: part/views.py:372 +#: part/views.py:396 msgid "Select Part Image" msgstr "" -#: part/views.py:398 +#: part/views.py:422 msgid "Updated part image" msgstr "" -#: part/views.py:401 +#: part/views.py:425 msgid "Part image not found" msgstr "" -#: part/views.py:493 +#: part/views.py:517 msgid "Part Pricing" msgstr "" @@ -6156,28 +6257,48 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:29 -#: plugin/builtin/integration/core_notifications.py:31 +#: plugin/builtin/integration/core_notifications.py:33 msgid "InvenTree contributors" msgstr "" -#: plugin/builtin/integration/core_notifications.py:30 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:32 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notificaton methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:37 -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:80 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:38 -#: plugin/builtin/integration/core_notifications.py:57 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:81 msgid "Allow sending of emails for event notifications" msgstr "" +#: plugin/builtin/integration/core_notifications.py:45 +msgid "Enable slack notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:46 +msgid "Allow sending of slack channel messages for event notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:51 +msgid "Slack incoming webhook url" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:52 +msgid "URL that is used to send messages to a slack channel" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:162 +msgid "Open link" +msgstr "" + #: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" @@ -6409,6 +6530,10 @@ msgstr "" msgid "Asset file description" msgstr "" +#: report/templates/report/inventree_bill_of_materials_report.html:133 +msgid "Materials needed" +msgstr "" + #: report/templates/report/inventree_build_order_base.html:146 msgid "Required For" msgstr "" @@ -6427,7 +6552,7 @@ msgstr "" #: templates/js/translated/build.js:1244 templates/js/translated/build.js:1745 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:121 templates/js/translated/order.js:3611 -#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:522 +#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:521 msgid "Serial Number" msgstr "" @@ -6459,8 +6584,9 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: stock/admin.py:87 templates/js/translated/stock.js:642 -#: templates/js/translated/stock.js:812 templates/js/translated/stock.js:2765 +#: stock/admin.py:87 templates/js/translated/part.js:749 +#: templates/js/translated/stock.js:641 templates/js/translated/stock.js:811 +#: templates/js/translated/stock.js:2760 msgid "Serial" msgstr "" @@ -6515,13 +6641,9 @@ msgstr "" msgid "Purchase Order ID" msgstr "" -#: stock/admin.py:107 templates/js/translated/stock.js:1910 -msgid "Stocktake" -msgstr "" - #: stock/admin.py:108 stock/models.py:764 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/stock.js:1924 +#: templates/js/translated/stock.js:1919 msgid "Expiry Date" msgstr "" @@ -6936,7 +7058,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2912 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2907 msgid "Install Stock Item" msgstr "" @@ -6944,7 +7066,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1561 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1560 msgid "Add Test Result" msgstr "" @@ -7117,10 +7239,6 @@ msgstr "" msgid "Stale" msgstr "" -#: stock/templates/stock/item_base.html:445 -msgid "Last Stocktake" -msgstr "" - #: stock/templates/stock/item_base.html:449 msgid "No stocktake performed" msgstr "" @@ -7394,7 +7512,8 @@ msgstr "" #: templates/InvenTree/notifications/notifications.html:10 #: templates/InvenTree/notifications/sidebar.html:5 -#: templates/InvenTree/settings/sidebar.html:17 templates/notifications.html:5 +#: templates/InvenTree/settings/sidebar.html:17 +#: templates/InvenTree/settings/sidebar.html:35 templates/notifications.html:5 msgid "Notifications" msgstr "" @@ -7475,6 +7594,14 @@ msgstr "" msgid "Open in new tab" msgstr "" +#: templates/InvenTree/settings/notifications.html:9 +msgid "Global Notification Settings" +msgstr "" + +#: templates/InvenTree/settings/notifications.html:18 +msgid "Slug" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -7492,7 +7619,7 @@ msgid "Part Parameter Templates" msgstr "" #: templates/InvenTree/settings/plugin.html:10 -#: templates/InvenTree/settings/sidebar.html:55 +#: templates/InvenTree/settings/sidebar.html:57 msgid "Plugin Settings" msgstr "" @@ -7501,7 +7628,7 @@ msgid "Changing the settings below require you to immediately restart the server msgstr "" #: templates/InvenTree/settings/plugin.html:38 -#: templates/InvenTree/settings/sidebar.html:57 +#: templates/InvenTree/settings/sidebar.html:59 msgid "Plugins" msgstr "" @@ -7669,67 +7796,67 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:117 +#: templates/InvenTree/settings/settings.html:118 msgid "Edit Plugin Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:119 +#: templates/InvenTree/settings/settings.html:120 msgid "Edit Notification Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:122 +#: templates/InvenTree/settings/settings.html:123 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:124 +#: templates/InvenTree/settings/settings.html:125 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:214 +#: templates/InvenTree/settings/settings.html:215 msgid "No category parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:236 -#: templates/InvenTree/settings/settings.html:361 -msgid "Edit Template" -msgstr "" - #: templates/InvenTree/settings/settings.html:237 #: templates/InvenTree/settings/settings.html:362 +msgid "Edit Template" +msgstr "" + +#: templates/InvenTree/settings/settings.html:238 +#: templates/InvenTree/settings/settings.html:363 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:277 +#: templates/InvenTree/settings/settings.html:278 msgid "Create Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:322 +#: templates/InvenTree/settings/settings.html:323 msgid "Delete Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:334 +#: templates/InvenTree/settings/settings.html:335 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:338 +#: templates/InvenTree/settings/settings.html:339 #: templates/js/translated/news.js:29 #: templates/js/translated/notification.js:36 msgid "ID" msgstr "" -#: templates/InvenTree/settings/settings.html:380 +#: templates/InvenTree/settings/settings.html:381 msgid "Create Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:399 +#: templates/InvenTree/settings/settings.html:400 msgid "Edit Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:413 +#: templates/InvenTree/settings/settings.html:414 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/InvenTree/settings/settings.html:421 +#: templates/InvenTree/settings/settings.html:422 msgid "Delete Part Parameter Template" msgstr "" @@ -7758,12 +7885,12 @@ msgid "Search Settings" msgstr "" #: templates/InvenTree/settings/sidebar.html:19 -#: templates/InvenTree/settings/sidebar.html:37 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Label Printing" msgstr "" #: templates/InvenTree/settings/sidebar.html:21 -#: templates/InvenTree/settings/sidebar.html:39 +#: templates/InvenTree/settings/sidebar.html:41 msgid "Reporting" msgstr "" @@ -7775,7 +7902,7 @@ msgstr "" msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:43 +#: templates/InvenTree/settings/sidebar.html:45 msgid "Categories" msgstr "" @@ -7945,64 +8072,64 @@ msgstr "" msgid "Do you really want to remove the selected email address?" msgstr "" -#: templates/InvenTree/settings/user_display.html:28 +#: templates/InvenTree/settings/user_display.html:29 msgid "Theme Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:38 +#: templates/InvenTree/settings/user_display.html:39 msgid "Select theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:49 +#: templates/InvenTree/settings/user_display.html:50 msgid "Set Theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:57 +#: templates/InvenTree/settings/user_display.html:58 msgid "Language Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:66 +#: templates/InvenTree/settings/user_display.html:67 msgid "Select language" msgstr "" -#: templates/InvenTree/settings/user_display.html:82 +#: templates/InvenTree/settings/user_display.html:83 #, python-format msgid "%(lang_translated)s%% translated" msgstr "" -#: templates/InvenTree/settings/user_display.html:84 +#: templates/InvenTree/settings/user_display.html:85 msgid "No translations available" msgstr "" -#: templates/InvenTree/settings/user_display.html:91 +#: templates/InvenTree/settings/user_display.html:92 msgid "Set Language" msgstr "" -#: templates/InvenTree/settings/user_display.html:94 +#: templates/InvenTree/settings/user_display.html:95 msgid "Some languages are not complete" msgstr "" -#: templates/InvenTree/settings/user_display.html:96 +#: templates/InvenTree/settings/user_display.html:97 msgid "Show only sufficent" msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "and hidden." msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "Show them too" msgstr "" -#: templates/InvenTree/settings/user_display.html:105 +#: templates/InvenTree/settings/user_display.html:106 msgid "Help the translation efforts!" msgstr "" -#: templates/InvenTree/settings/user_display.html:106 +#: templates/InvenTree/settings/user_display.html:107 msgid "Native language translation of the web application is community contributed via crowdin. Contributions are welcomed and encouraged." msgstr "" -#: templates/InvenTree/settings/user_display.html:107 +#: templates/InvenTree/settings/user_display.html:108 msgid "InvenTree Translation Project" msgstr "" @@ -8080,7 +8207,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:646 +#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:649 msgid "Confirm" msgstr "Confirmar" @@ -8313,7 +8440,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 -#: templates/js/translated/part.js:2445 +#: templates/js/translated/part.js:2726 msgid "Minimum Quantity" msgstr "" @@ -8466,7 +8593,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1089 +#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1088 msgid "Remove stock item" msgstr "" @@ -8548,16 +8675,6 @@ msgstr "" msgid "Download BOM Template" msgstr "" -#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 -#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 -msgid "Format" -msgstr "" - -#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 -#: templates/js/translated/order.js:999 -msgid "Select file format" -msgstr "" - #: templates/js/translated/bom.js:320 msgid "Multi Level BOM" msgstr "" @@ -8688,7 +8805,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:1145 templates/js/translated/build.js:1923 -#: templates/js/translated/part.js:790 templates/js/translated/part.js:1572 +#: templates/js/translated/part.js:1061 templates/js/translated/part.js:1843 msgid "Includes variant stock" msgstr "" @@ -8773,13 +8890,13 @@ msgstr "" msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:317 templates/js/translated/stock.js:95 -#: templates/js/translated/stock.js:237 +#: templates/js/translated/build.js:317 templates/js/translated/stock.js:94 +#: templates/js/translated/stock.js:236 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:319 templates/js/translated/stock.js:97 -#: templates/js/translated/stock.js:239 +#: templates/js/translated/build.js:319 templates/js/translated/stock.js:96 +#: templates/js/translated/stock.js:238 msgid "Latest serial number" msgstr "" @@ -8987,9 +9104,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1466 -#: templates/js/translated/part.js:2003 templates/js/translated/stock.js:1725 -#: templates/js/translated/stock.js:2428 +#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1737 +#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1724 +#: templates/js/translated/stock.js:2423 msgid "Select" msgstr "" @@ -9001,7 +9118,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2695 +#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2690 msgid "No user information" msgstr "" @@ -9074,34 +9191,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:652 -#: templates/js/translated/company.js:913 templates/js/translated/part.js:661 -#: templates/js/translated/part.js:747 +#: templates/js/translated/company.js:913 templates/js/translated/part.js:664 +#: templates/js/translated/part.js:1018 msgid "Template part" msgstr "" #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:917 templates/js/translated/part.js:665 -#: templates/js/translated/part.js:751 +#: templates/js/translated/company.js:917 templates/js/translated/part.js:668 +#: templates/js/translated/part.js:1022 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:784 templates/js/translated/part.js:870 +#: templates/js/translated/company.js:784 templates/js/translated/part.js:1141 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:821 templates/js/translated/part.js:912 +#: templates/js/translated/company.js:821 templates/js/translated/part.js:1183 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:822 templates/js/translated/part.js:913 +#: templates/js/translated/company.js:822 templates/js/translated/part.js:1184 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:841 templates/js/translated/part.js:930 +#: templates/js/translated/company.js:841 templates/js/translated/part.js:1201 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:852 templates/js/translated/part.js:942 +#: templates/js/translated/company.js:852 templates/js/translated/part.js:1213 msgid "Delete Parameter" msgstr "" @@ -9181,61 +9298,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:369 templates/js/translated/forms.js:384 -#: templates/js/translated/forms.js:398 templates/js/translated/forms.js:412 +#: templates/js/translated/forms.js:372 templates/js/translated/forms.js:387 +#: templates/js/translated/forms.js:401 templates/js/translated/forms.js:415 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:371 +#: templates/js/translated/forms.js:374 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:386 +#: templates/js/translated/forms.js:389 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:400 +#: templates/js/translated/forms.js:403 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:414 +#: templates/js/translated/forms.js:417 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:672 +#: templates/js/translated/forms.js:675 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:773 +#: templates/js/translated/forms.js:776 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1266 templates/modals.html:19 +#: templates/js/translated/forms.js:1269 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1703 +#: templates/js/translated/forms.js:1706 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1919 templates/search.html:29 +#: templates/js/translated/forms.js:1922 templates/search.html:29 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2172 +#: templates/js/translated/forms.js:2175 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:2640 +#: templates/js/translated/forms.js:2643 msgid "Select Columns" msgstr "" @@ -9256,7 +9373,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1113 +#: templates/js/translated/stock.js:1112 msgid "Select Stock Items" msgstr "" @@ -9590,7 +9707,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2184 +#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2179 msgid "Stock Status" msgstr "" @@ -9614,7 +9731,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1982 templates/js/translated/part.js:983 +#: templates/js/translated/order.js:1982 templates/js/translated/part.js:1254 msgid "No purchase orders found" msgstr "" @@ -9647,8 +9764,8 @@ msgstr "" msgid "Total" msgstr "" -#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1085 -#: templates/js/translated/part.js:1137 +#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1356 +#: templates/js/translated/part.js:1408 msgid "Total Quantity" msgstr "" @@ -9666,11 +9783,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2388 templates/js/translated/order.js:3900 -#: templates/js/translated/part.js:1121 +#: templates/js/translated/part.js:1392 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1166 +#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1437 msgid "Receive line item" msgstr "" @@ -9791,7 +9908,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3623 templates/js/translated/order.js:3712 -#: templates/js/translated/stock.js:1641 +#: templates/js/translated/stock.js:1640 msgid "Shipped to customer" msgstr "" @@ -9835,334 +9952,358 @@ msgstr "" msgid "No matching lines" msgstr "" -#: templates/js/translated/part.js:52 +#: templates/js/translated/part.js:55 msgid "Part Attributes" msgstr "" -#: templates/js/translated/part.js:56 +#: templates/js/translated/part.js:59 msgid "Part Creation Options" msgstr "" -#: templates/js/translated/part.js:60 +#: templates/js/translated/part.js:63 msgid "Part Duplication Options" msgstr "" -#: templates/js/translated/part.js:64 +#: templates/js/translated/part.js:67 msgid "Supplier Options" msgstr "" -#: templates/js/translated/part.js:78 +#: templates/js/translated/part.js:81 msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:168 +#: templates/js/translated/part.js:171 msgid "Create Initial Stock" msgstr "" -#: templates/js/translated/part.js:169 +#: templates/js/translated/part.js:172 msgid "Create an initial stock item for this part" msgstr "" -#: templates/js/translated/part.js:176 +#: templates/js/translated/part.js:179 msgid "Initial Stock Quantity" msgstr "" -#: templates/js/translated/part.js:177 +#: templates/js/translated/part.js:180 msgid "Specify initial stock quantity for this part" msgstr "" -#: templates/js/translated/part.js:184 +#: templates/js/translated/part.js:187 msgid "Select destination stock location" msgstr "" -#: templates/js/translated/part.js:202 +#: templates/js/translated/part.js:205 msgid "Copy Category Parameters" msgstr "" -#: templates/js/translated/part.js:203 +#: templates/js/translated/part.js:206 msgid "Copy parameter templates from selected part category" msgstr "" -#: templates/js/translated/part.js:211 +#: templates/js/translated/part.js:214 msgid "Add Supplier Data" msgstr "" -#: templates/js/translated/part.js:212 +#: templates/js/translated/part.js:215 msgid "Create initial supplier data for this part" msgstr "" -#: templates/js/translated/part.js:268 +#: templates/js/translated/part.js:271 msgid "Copy Image" msgstr "" -#: templates/js/translated/part.js:269 +#: templates/js/translated/part.js:272 msgid "Copy image from original part" msgstr "" -#: templates/js/translated/part.js:277 +#: templates/js/translated/part.js:280 msgid "Copy bill of materials from original part" msgstr "" -#: templates/js/translated/part.js:284 +#: templates/js/translated/part.js:287 msgid "Copy Parameters" msgstr "" -#: templates/js/translated/part.js:285 +#: templates/js/translated/part.js:288 msgid "Copy parameter data from original part" msgstr "" -#: templates/js/translated/part.js:298 +#: templates/js/translated/part.js:301 msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:313 templates/js/translated/stock.js:122 +#: templates/js/translated/part.js:316 templates/js/translated/stock.js:121 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:329 +#: templates/js/translated/part.js:332 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:342 +#: templates/js/translated/part.js:345 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:347 +#: templates/js/translated/part.js:350 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:359 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:360 +#: templates/js/translated/part.js:363 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:368 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:394 +#: templates/js/translated/part.js:397 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:396 +#: templates/js/translated/part.js:399 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:407 +#: templates/js/translated/part.js:410 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:459 +#: templates/js/translated/part.js:462 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:460 +#: templates/js/translated/part.js:463 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:477 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:476 +#: templates/js/translated/part.js:479 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:477 +#: templates/js/translated/part.js:480 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:478 +#: templates/js/translated/part.js:481 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:485 +#: templates/js/translated/part.js:488 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:521 +#: templates/js/translated/part.js:524 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:523 +#: templates/js/translated/part.js:526 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:531 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:530 +#: templates/js/translated/part.js:533 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:547 +#: templates/js/translated/part.js:550 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:560 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:560 +#: templates/js/translated/part.js:563 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:585 +#: templates/js/translated/part.js:588 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1554 +#: templates/js/translated/part.js:612 templates/js/translated/part.js:1825 #: templates/js/translated/table_filters.js:488 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:622 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:653 templates/js/translated/part.js:739 +#: templates/js/translated/part.js:656 templates/js/translated/part.js:1010 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:657 templates/js/translated/part.js:743 +#: templates/js/translated/part.js:660 templates/js/translated/part.js:1014 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:669 +#: templates/js/translated/part.js:672 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:673 +#: templates/js/translated/part.js:676 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:815 +#: templates/js/translated/part.js:761 +msgid "Stock item has not been checked recently" +msgstr "" + +#: templates/js/translated/part.js:769 +msgid "Update item" +msgstr "" + +#: templates/js/translated/part.js:770 +msgid "Delete item" +msgstr "" + +#: templates/js/translated/part.js:871 +msgid "No stocktake information available" +msgstr "" + +#: templates/js/translated/part.js:910 templates/js/translated/part.js:933 +msgid "Edit Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:914 templates/js/translated/part.js:945 +msgid "Delete Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:1086 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1236 +#: templates/js/translated/part.js:1507 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1260 +#: templates/js/translated/part.js:1531 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1327 templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1598 templates/js/translated/part.js:1936 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1521 +#: templates/js/translated/part.js:1792 msgid "No category" msgstr "" -#: templates/js/translated/part.js:1552 +#: templates/js/translated/part.js:1823 msgid "No stock" msgstr "" -#: templates/js/translated/part.js:1576 +#: templates/js/translated/part.js:1847 msgid "Allocated to build orders" msgstr "" -#: templates/js/translated/part.js:1580 +#: templates/js/translated/part.js:1851 msgid "Allocated to sales orders" msgstr "" -#: templates/js/translated/part.js:1679 templates/js/translated/part.js:1922 -#: templates/js/translated/stock.js:2387 +#: templates/js/translated/part.js:1960 templates/js/translated/part.js:2203 +#: templates/js/translated/stock.js:2382 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1695 +#: templates/js/translated/part.js:1976 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1761 +#: templates/js/translated/part.js:2042 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1766 +#: templates/js/translated/part.js:2047 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1771 +#: templates/js/translated/part.js:2052 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1784 +#: templates/js/translated/part.js:2065 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1942 templates/js/translated/stock.js:2407 +#: templates/js/translated/part.js:2223 templates/js/translated/stock.js:2402 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2022 +#: templates/js/translated/part.js:2303 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2038 +#: templates/js/translated/part.js:2319 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2383 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2153 templates/js/translated/stock.js:1338 +#: templates/js/translated/part.js:2434 templates/js/translated/stock.js:1337 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2154 templates/js/translated/stock.js:1339 -#: templates/js/translated/stock.js:1599 +#: templates/js/translated/part.js:2435 templates/js/translated/stock.js:1338 +#: templates/js/translated/stock.js:1598 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2441 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2182 +#: templates/js/translated/part.js:2463 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2196 +#: templates/js/translated/part.js:2477 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2277 templates/js/translated/part.js:2278 +#: templates/js/translated/part.js:2558 templates/js/translated/part.js:2559 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2280 +#: templates/js/translated/part.js:2561 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:2286 +#: templates/js/translated/part.js:2567 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:2336 +#: templates/js/translated/part.js:2617 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2623 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:2438 +#: templates/js/translated/part.js:2719 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2454 +#: templates/js/translated/part.js:2735 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:2499 +#: templates/js/translated/part.js:2780 msgid "Minimum Stock Level" msgstr "" @@ -10290,388 +10431,388 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:74 +#: templates/js/translated/stock.js:73 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:104 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:114 +#: templates/js/translated/stock.js:113 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:148 +#: templates/js/translated/stock.js:147 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:163 +#: templates/js/translated/stock.js:162 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:177 +#: templates/js/translated/stock.js:176 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:184 +#: templates/js/translated/stock.js:183 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:193 +#: templates/js/translated/stock.js:192 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:197 +#: templates/js/translated/stock.js:196 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:201 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:256 +#: templates/js/translated/stock.js:255 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:298 +#: templates/js/translated/stock.js:297 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:304 +#: templates/js/translated/stock.js:303 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:368 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:389 +#: templates/js/translated/stock.js:388 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:405 +#: templates/js/translated/stock.js:404 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:410 +#: templates/js/translated/stock.js:409 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:431 +#: templates/js/translated/stock.js:430 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:481 +#: templates/js/translated/stock.js:480 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:494 +#: templates/js/translated/stock.js:493 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:519 +#: templates/js/translated/stock.js:518 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:523 templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:522 templates/js/translated/stock.js:523 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:540 +#: templates/js/translated/stock.js:539 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:560 +#: templates/js/translated/stock.js:559 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:568 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:692 +#: templates/js/translated/stock.js:691 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:693 +#: templates/js/translated/stock.js:692 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:770 +#: templates/js/translated/stock.js:769 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:771 +#: templates/js/translated/stock.js:770 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:773 +#: templates/js/translated/stock.js:772 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:774 +#: templates/js/translated/stock.js:773 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:863 +#: templates/js/translated/stock.js:862 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:864 +#: templates/js/translated/stock.js:863 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:958 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:959 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:966 +#: templates/js/translated/stock.js:965 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:967 +#: templates/js/translated/stock.js:966 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:971 +#: templates/js/translated/stock.js:970 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:972 +#: templates/js/translated/stock.js:971 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:976 +#: templates/js/translated/stock.js:975 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:977 users/models.py:220 +#: templates/js/translated/stock.js:976 users/models.py:221 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:981 +#: templates/js/translated/stock.js:980 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1114 +#: templates/js/translated/stock.js:1113 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1141 +#: templates/js/translated/stock.js:1140 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1277 +#: templates/js/translated/stock.js:1276 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1279 +#: templates/js/translated/stock.js:1278 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1284 +#: templates/js/translated/stock.js:1283 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1331 +#: templates/js/translated/stock.js:1330 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1334 +#: templates/js/translated/stock.js:1333 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1360 +#: templates/js/translated/stock.js:1359 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1417 +#: templates/js/translated/stock.js:1416 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1582 +#: templates/js/translated/stock.js:1581 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1604 +#: templates/js/translated/stock.js:1603 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1633 +#: templates/js/translated/stock.js:1632 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1637 +#: templates/js/translated/stock.js:1636 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1645 +#: templates/js/translated/stock.js:1644 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1651 +#: templates/js/translated/stock.js:1650 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1820 +#: templates/js/translated/stock.js:1815 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1825 +#: templates/js/translated/stock.js:1820 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1828 +#: templates/js/translated/stock.js:1823 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1831 +#: templates/js/translated/stock.js:1826 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1833 +#: templates/js/translated/stock.js:1828 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1835 +#: templates/js/translated/stock.js:1830 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1838 +#: templates/js/translated/stock.js:1833 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1837 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1844 +#: templates/js/translated/stock.js:1839 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1846 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1853 +#: templates/js/translated/stock.js:1848 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1855 +#: templates/js/translated/stock.js:1850 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1859 +#: templates/js/translated/stock.js:1854 #: templates/js/translated/table_filters.js:216 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1989 +#: templates/js/translated/stock.js:1984 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2026 +#: templates/js/translated/stock.js:2021 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2199 +#: templates/js/translated/stock.js:2194 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2213 +#: templates/js/translated/stock.js:2208 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2214 +#: templates/js/translated/stock.js:2209 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2446 +#: templates/js/translated/stock.js:2441 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2536 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2557 +#: templates/js/translated/stock.js:2552 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2579 +#: templates/js/translated/stock.js:2574 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2598 +#: templates/js/translated/stock.js:2593 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2617 +#: templates/js/translated/stock.js:2612 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2635 +#: templates/js/translated/stock.js:2630 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2658 +#: templates/js/translated/stock.js:2653 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2666 +#: templates/js/translated/stock.js:2661 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2737 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2793 templates/js/translated/stock.js:2829 +#: templates/js/translated/stock.js:2788 templates/js/translated/stock.js:2824 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2845 +#: templates/js/translated/stock.js:2840 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2866 +#: templates/js/translated/stock.js:2861 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2867 +#: templates/js/translated/stock.js:2862 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2869 +#: templates/js/translated/stock.js:2864 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2870 +#: templates/js/translated/stock.js:2865 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:2866 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2872 +#: templates/js/translated/stock.js:2867 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2885 +#: templates/js/translated/stock.js:2880 msgid "Select part to install" msgstr "" @@ -10696,7 +10837,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:92 -#: templates/js/translated/table_filters.js:516 +#: templates/js/translated/table_filters.js:520 msgid "Has Pricing" msgstr "" @@ -10912,6 +11053,10 @@ msgstr "" msgid "Purchasable" msgstr "" +#: templates/js/translated/table_filters.js:504 +msgid "Has stocktake entries" +msgstr "" + #: templates/js/translated/tables.js:70 msgid "Display calendar view" msgstr "" @@ -11206,35 +11351,35 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:207 +#: users/models.py:208 msgid "Permission set" msgstr "" -#: users/models.py:215 +#: users/models.py:216 msgid "Group" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "View" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "Permission to view items" msgstr "" -#: users/models.py:220 +#: users/models.py:221 msgid "Permission to add items" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Change" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Permissions to edit items" msgstr "" -#: users/models.py:224 +#: users/models.py:225 msgid "Permission to delete items" msgstr "" diff --git a/InvenTree/locale/pt_br/LC_MESSAGES/django.po b/InvenTree/locale/pt_br/LC_MESSAGES/django.po index e15118ab34..4ca87518a5 100644 --- a/InvenTree/locale/pt_br/LC_MESSAGES/django.po +++ b/InvenTree/locale/pt_br/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-12-25 08:14+0000\n" +"POT-Creation-Date: 2023-01-01 11:05+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -35,7 +35,7 @@ msgstr "" #: company/templates/company/sidebar.html:25 order/models.py:943 #: order/templates/order/po_sidebar.html:11 #: order/templates/order/so_sidebar.html:17 part/admin.py:27 -#: part/templates/part/part_sidebar.html:57 +#: part/models.py:2932 part/templates/part/part_sidebar.html:62 #: report/templates/report/inventree_build_order_base.html:172 #: stock/admin.py:103 stock/models.py:2061 stock/models.py:2169 #: stock/serializers.py:321 stock/serializers.py:454 stock/serializers.py:535 @@ -45,8 +45,8 @@ msgstr "" #: templates/js/translated/company.js:1023 #: templates/js/translated/order.js:2435 templates/js/translated/order.js:2569 #: templates/js/translated/order.js:3067 templates/js/translated/order.js:4004 -#: templates/js/translated/order.js:4385 templates/js/translated/stock.js:1413 -#: templates/js/translated/stock.js:2020 +#: templates/js/translated/order.js:4385 templates/js/translated/part.js:882 +#: templates/js/translated/stock.js:1412 templates/js/translated/stock.js:2015 msgid "Notes" msgstr "" @@ -205,18 +205,18 @@ msgstr "" msgid "Select file to attach" msgstr "" -#: InvenTree/models.py:412 common/models.py:2366 company/models.py:129 +#: InvenTree/models.py:412 common/models.py:2373 company/models.py:129 #: company/models.py:281 company/models.py:516 order/models.py:85 -#: order/models.py:1282 part/admin.py:25 part/models.py:865 +#: order/models.py:1282 part/admin.py:25 part/models.py:866 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: stock/admin.py:102 templates/js/translated/company.js:692 #: templates/js/translated/company.js:1012 -#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1608 +#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1886 msgid "Link" msgstr "" -#: InvenTree/models.py:413 build/models.py:290 part/models.py:866 +#: InvenTree/models.py:413 build/models.py:290 part/models.py:867 #: stock/models.py:716 msgid "Link to external URL" msgstr "" @@ -230,12 +230,13 @@ msgstr "" msgid "File comment" msgstr "" -#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1810 -#: common/models.py:1811 common/models.py:2034 common/models.py:2035 -#: common/models.py:2296 common/models.py:2297 part/models.py:2948 -#: part/models.py:2968 plugin/models.py:264 plugin/models.py:265 +#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1817 +#: common/models.py:1818 common/models.py:2041 common/models.py:2042 +#: common/models.py:2303 common/models.py:2304 part/models.py:2940 +#: part/models.py:3026 part/models.py:3046 plugin/models.py:264 +#: plugin/models.py:265 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2689 +#: templates/js/translated/stock.js:2684 msgid "User" msgstr "" @@ -272,19 +273,20 @@ msgstr "" msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2020 -#: company/models.py:363 label/models.py:101 part/models.py:809 -#: part/models.py:3123 plugin/models.py:94 report/models.py:152 +#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2027 +#: company/models.py:363 label/models.py:101 part/models.py:810 +#: part/models.py:3201 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 +#: templates/InvenTree/settings/notifications.html:17 #: templates/InvenTree/settings/plugin.html:60 #: templates/InvenTree/settings/plugin.html:104 #: templates/InvenTree/settings/plugin_settings.html:23 -#: templates/InvenTree/settings/settings.html:344 +#: templates/InvenTree/settings/settings.html:345 #: templates/js/translated/company.js:581 #: templates/js/translated/company.js:794 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:711 templates/js/translated/part.js:880 -#: templates/js/translated/part.js:2003 templates/js/translated/stock.js:2434 +#: templates/js/translated/part.js:982 templates/js/translated/part.js:1151 +#: templates/js/translated/part.js:2291 templates/js/translated/stock.js:2429 msgid "Name" msgstr "" @@ -293,24 +295,25 @@ msgstr "" #: company/models.py:522 company/templates/company/company_base.html:72 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:108 label/models.py:108 -#: order/models.py:83 part/admin.py:141 part/admin.py:222 part/models.py:832 -#: part/models.py:3132 part/templates/part/category.html:75 +#: order/models.py:83 part/admin.py:174 part/admin.py:255 part/models.py:833 +#: part/models.py:3210 part/templates/part/category.html:75 #: part/templates/part/part_base.html:172 #: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/admin.py:25 stock/templates/stock/location.html:117 +#: templates/InvenTree/settings/notifications.html:19 #: templates/InvenTree/settings/plugin_settings.html:28 -#: templates/InvenTree/settings/settings.html:355 +#: templates/InvenTree/settings/settings.html:356 #: templates/js/translated/bom.js:592 templates/js/translated/bom.js:895 #: templates/js/translated/build.js:2596 templates/js/translated/company.js:445 #: templates/js/translated/company.js:703 #: templates/js/translated/company.js:987 templates/js/translated/order.js:2030 #: templates/js/translated/order.js:2267 templates/js/translated/order.js:2845 -#: templates/js/translated/part.js:773 templates/js/translated/part.js:1223 -#: templates/js/translated/part.js:1490 templates/js/translated/part.js:2039 -#: templates/js/translated/part.js:2114 templates/js/translated/stock.js:1787 -#: templates/js/translated/stock.js:2466 templates/js/translated/stock.js:2526 +#: templates/js/translated/part.js:1044 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1768 templates/js/translated/part.js:2327 +#: templates/js/translated/part.js:2402 templates/js/translated/stock.js:1782 +#: templates/js/translated/stock.js:2461 templates/js/translated/stock.js:2521 msgid "Description" msgstr "" @@ -323,7 +326,7 @@ msgid "parent" msgstr "" #: InvenTree/models.py:580 InvenTree/models.py:581 -#: templates/js/translated/part.js:2048 templates/js/translated/stock.js:2475 +#: templates/js/translated/part.js:2336 templates/js/translated/stock.js:2470 msgid "Path" msgstr "" @@ -355,7 +358,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:58 part/models.py:3468 +#: InvenTree/serializers.py:58 part/models.py:3546 msgid "Must be a valid number" msgstr "" @@ -422,107 +425,107 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:639 +#: InvenTree/settings.py:642 msgid "Czech" msgstr "" -#: InvenTree/settings.py:640 +#: InvenTree/settings.py:643 msgid "Danish" msgstr "" -#: InvenTree/settings.py:641 +#: InvenTree/settings.py:644 msgid "German" msgstr "" -#: InvenTree/settings.py:642 +#: InvenTree/settings.py:645 msgid "Greek" msgstr "" -#: InvenTree/settings.py:643 +#: InvenTree/settings.py:646 msgid "English" msgstr "" -#: InvenTree/settings.py:644 +#: InvenTree/settings.py:647 msgid "Spanish" msgstr "" -#: InvenTree/settings.py:645 +#: InvenTree/settings.py:648 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:646 +#: InvenTree/settings.py:649 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:647 +#: InvenTree/settings.py:650 msgid "French" msgstr "" -#: InvenTree/settings.py:648 +#: InvenTree/settings.py:651 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:649 +#: InvenTree/settings.py:652 msgid "Hungarian" msgstr "" -#: InvenTree/settings.py:650 +#: InvenTree/settings.py:653 msgid "Italian" msgstr "" -#: InvenTree/settings.py:651 +#: InvenTree/settings.py:654 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:652 +#: InvenTree/settings.py:655 msgid "Korean" msgstr "" -#: InvenTree/settings.py:653 +#: InvenTree/settings.py:656 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:654 +#: InvenTree/settings.py:657 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:655 +#: InvenTree/settings.py:658 msgid "Polish" msgstr "" -#: InvenTree/settings.py:656 +#: InvenTree/settings.py:659 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:657 +#: InvenTree/settings.py:660 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:658 +#: InvenTree/settings.py:661 msgid "Russian" msgstr "" -#: InvenTree/settings.py:659 +#: InvenTree/settings.py:662 msgid "Slovenian" msgstr "" -#: InvenTree/settings.py:660 +#: InvenTree/settings.py:663 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:661 +#: InvenTree/settings.py:664 msgid "Thai" msgstr "" -#: InvenTree/settings.py:662 +#: InvenTree/settings.py:665 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:663 +#: InvenTree/settings.py:666 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:664 +#: InvenTree/settings.py:667 msgid "Chinese" msgstr "" @@ -653,7 +656,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2124 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2119 msgid "Merged stock items" msgstr "" @@ -757,7 +760,7 @@ msgstr "" #: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:141 -#: templates/InvenTree/settings/sidebar.html:47 +#: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:254 users/models.py:41 msgid "Build Orders" msgstr "" @@ -767,8 +770,9 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:155 order/models.py:241 order/models.py:651 -#: order/models.py:941 part/admin.py:224 part/models.py:3378 +#: order/models.py:941 part/admin.py:257 part/models.py:3456 #: part/templates/part/upload_bom.html:54 +#: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 #: templates/js/translated/bom.js:729 templates/js/translated/bom.js:905 @@ -794,13 +798,15 @@ msgstr "" #: build/models.py:180 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:684 #: order/models.py:1038 order/models.py:1149 order/models.py:1150 -#: part/models.py:381 part/models.py:2781 part/models.py:2894 -#: part/models.py:2909 part/models.py:2928 part/models.py:2946 -#: part/models.py:3045 part/models.py:3166 part/models.py:3258 -#: part/models.py:3343 part/models.py:3659 part/serializers.py:853 -#: part/templates/part/part_app_base.html:8 +#: part/models.py:382 part/models.py:2799 part/models.py:2912 +#: part/models.py:2972 part/models.py:2987 part/models.py:3006 +#: part/models.py:3024 part/models.py:3123 part/models.py:3244 +#: part/models.py:3336 part/models.py:3421 part/models.py:3737 +#: part/serializers.py:894 part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 +#: report/templates/report/inventree_bill_of_materials_report.html:110 +#: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_base.html:109 #: report/templates/report/inventree_po_report.html:89 #: report/templates/report/inventree_so_report.html:90 stock/serializers.py:90 @@ -820,12 +826,12 @@ msgstr "" #: templates/js/translated/order.js:1172 templates/js/translated/order.js:1676 #: templates/js/translated/order.js:2252 templates/js/translated/order.js:3199 #: templates/js/translated/order.js:3595 templates/js/translated/order.js:3825 -#: templates/js/translated/part.js:1208 templates/js/translated/part.js:1280 -#: templates/js/translated/part.js:1467 templates/js/translated/pricing.js:102 -#: templates/js/translated/stock.js:618 templates/js/translated/stock.js:783 -#: templates/js/translated/stock.js:993 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2552 templates/js/translated/stock.js:2747 -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/part.js:1479 templates/js/translated/part.js:1551 +#: templates/js/translated/part.js:1745 templates/js/translated/pricing.js:102 +#: templates/js/translated/stock.js:617 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:992 templates/js/translated/stock.js:1738 +#: templates/js/translated/stock.js:2547 templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2879 msgid "Part" msgstr "" @@ -891,7 +897,7 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:252 order/models.py:87 part/models.py:1001 +#: build/models.py:252 order/models.py:87 part/models.py:1002 #: part/templates/part/part_base.html:318 templates/js/translated/order.js:2858 msgid "Creation Date" msgstr "" @@ -924,7 +930,7 @@ msgstr "" #: build/models.py:283 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:101 #: order/templates/order/order_base.html:185 -#: order/templates/order/sales_order_base.html:183 part/models.py:1005 +#: order/templates/order/sales_order_base.html:183 part/models.py:1006 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2658 templates/js/translated/order.js:2064 msgid "Responsible" @@ -937,7 +943,7 @@ msgstr "" #: build/models.py:289 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:188 -#: part/templates/part/part_base.html:376 stock/models.py:714 +#: part/templates/part/part_base.html:390 stock/models.py:714 #: stock/templates/stock/item_base.html:203 msgid "External Link" msgstr "" @@ -1012,8 +1018,8 @@ msgstr "" #: templates/js/translated/order.js:107 templates/js/translated/order.js:3200 #: templates/js/translated/order.js:3502 templates/js/translated/order.js:3507 #: templates/js/translated/order.js:3602 templates/js/translated/order.js:3694 -#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 -#: templates/js/translated/stock.js:2625 +#: templates/js/translated/part.js:803 templates/js/translated/stock.js:618 +#: templates/js/translated/stock.js:783 templates/js/translated/stock.js:2620 msgid "Stock Item" msgstr "" @@ -1023,12 +1029,13 @@ msgstr "" #: build/models.py:1364 build/serializers.py:192 #: build/templates/build/build_base.html:85 -#: build/templates/build/detail.html:34 common/models.py:1842 +#: build/templates/build/detail.html:34 common/models.py:1849 #: order/models.py:934 order/models.py:1460 order/serializers.py:1206 -#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:223 -#: part/forms.py:40 part/models.py:3359 +#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:256 +#: part/forms.py:40 part/models.py:2919 part/models.py:3437 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 +#: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_base.html:113 #: report/templates/report/inventree_po_report.html:90 #: report/templates/report/inventree_so_report.html:91 @@ -1050,13 +1057,14 @@ msgstr "" #: templates/js/translated/order.js:3201 templates/js/translated/order.js:3521 #: templates/js/translated/order.js:3608 templates/js/translated/order.js:3700 #: templates/js/translated/order.js:3847 templates/js/translated/order.js:4338 -#: templates/js/translated/part.js:1078 templates/js/translated/part.js:2561 +#: templates/js/translated/part.js:805 templates/js/translated/part.js:876 +#: templates/js/translated/part.js:1349 templates/js/translated/part.js:2849 #: templates/js/translated/pricing.js:114 #: templates/js/translated/pricing.js:207 #: templates/js/translated/pricing.js:255 -#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:490 -#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:814 -#: templates/js/translated/stock.js:2674 templates/js/translated/stock.js:2759 +#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:489 +#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:813 +#: templates/js/translated/stock.js:2669 templates/js/translated/stock.js:2754 msgid "Quantity" msgstr "" @@ -1098,8 +1106,8 @@ msgid "Enter quantity for build output" msgstr "" #: build/serializers.py:207 build/serializers.py:683 order/models.py:327 -#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:645 -#: part/serializers.py:1016 stock/models.py:574 stock/models.py:1312 +#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:686 +#: part/serializers.py:1057 stock/models.py:574 stock/models.py:1312 #: stock/serializers.py:294 msgid "Quantity must be greater than zero" msgstr "" @@ -1114,7 +1122,7 @@ msgstr "" #: build/serializers.py:231 order/serializers.py:463 order/serializers.py:1210 #: stock/serializers.py:303 templates/js/translated/order.js:1545 -#: templates/js/translated/stock.js:303 templates/js/translated/stock.js:491 +#: templates/js/translated/stock.js:302 templates/js/translated/stock.js:490 msgid "Serial Numbers" msgstr "" @@ -1147,9 +1155,10 @@ msgstr "" #: templates/js/translated/build.js:1759 templates/js/translated/order.js:1572 #: templates/js/translated/order.js:3514 templates/js/translated/order.js:3619 #: templates/js/translated/order.js:3627 templates/js/translated/order.js:3708 -#: templates/js/translated/part.js:183 templates/js/translated/stock.js:620 -#: templates/js/translated/stock.js:785 templates/js/translated/stock.js:995 -#: templates/js/translated/stock.js:1895 templates/js/translated/stock.js:2566 +#: templates/js/translated/part.js:186 templates/js/translated/part.js:804 +#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 +#: templates/js/translated/stock.js:994 templates/js/translated/stock.js:1890 +#: templates/js/translated/stock.js:2561 msgid "Location" msgstr "" @@ -1163,8 +1172,8 @@ msgstr "" #: stock/templates/stock/item_base.html:421 #: templates/js/translated/barcode.js:237 templates/js/translated/build.js:2630 #: templates/js/translated/order.js:1681 templates/js/translated/order.js:2034 -#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1870 -#: templates/js/translated/stock.js:2643 templates/js/translated/stock.js:2775 +#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:2638 templates/js/translated/stock.js:2770 msgid "Status" msgstr "" @@ -1240,8 +1249,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:595 build/serializers.py:640 part/models.py:3495 -#: part/models.py:3651 +#: build/serializers.py:595 build/serializers.py:640 part/models.py:3573 +#: part/models.py:3729 msgid "BOM Item" msgstr "" @@ -1407,7 +1416,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2670 templates/js/translated/order.js:2051 #: templates/js/translated/order.js:2382 templates/js/translated/order.js:2866 -#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1093 +#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1364 msgid "Target Date" msgstr "" @@ -1485,8 +1494,8 @@ msgstr "" #: stock/templates/stock/item_base.html:168 #: templates/js/translated/build.js:1250 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:1884 -#: templates/js/translated/stock.js:2782 +#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:1879 +#: templates/js/translated/stock.js:2777 #: templates/js/translated/table_filters.js:179 #: templates/js/translated/table_filters.js:270 msgid "Batch" @@ -1618,8 +1627,8 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:86 #: order/templates/order/sales_order_detail.html:140 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:210 -#: part/templates/part/part_sidebar.html:55 stock/templates/stock/item.html:117 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:233 +#: part/templates/part/part_sidebar.html:60 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" msgstr "" @@ -1636,7 +1645,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:316 +#: build/templates/build/index.html:18 part/templates/part/detail.html:339 msgid "New Build Order" msgstr "" @@ -1929,9 +1938,9 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1014 part/admin.py:41 part/models.py:3168 +#: common/models.py:1014 part/admin.py:41 part/models.py:3246 #: report/models.py:158 templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:504 +#: templates/js/translated/table_filters.js:508 msgid "Template" msgstr "" @@ -1939,7 +1948,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:1021 part/admin.py:37 part/admin.py:229 part/models.py:957 +#: common/models.py:1021 part/admin.py:37 part/admin.py:262 part/models.py:958 #: templates/js/translated/bom.js:1595 #: templates/js/translated/table_filters.js:196 #: templates/js/translated/table_filters.js:467 @@ -1950,7 +1959,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1028 part/admin.py:38 part/models.py:963 +#: common/models.py:1028 part/admin.py:38 part/models.py:964 #: templates/js/translated/table_filters.js:475 msgid "Component" msgstr "" @@ -1959,7 +1968,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1035 part/admin.py:39 part/models.py:974 +#: common/models.py:1035 part/admin.py:39 part/models.py:975 msgid "Purchaseable" msgstr "" @@ -1967,7 +1976,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1042 part/admin.py:40 part/models.py:979 +#: common/models.py:1042 part/admin.py:40 part/models.py:980 #: templates/js/translated/table_filters.js:496 msgid "Salable" msgstr "" @@ -1976,10 +1985,10 @@ msgstr "" msgid "Parts are salable by default" msgstr "" -#: common/models.py:1049 part/admin.py:42 part/models.py:969 +#: common/models.py:1049 part/admin.py:42 part/models.py:970 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:120 -#: templates/js/translated/table_filters.js:508 +#: templates/js/translated/table_filters.js:512 msgid "Trackable" msgstr "" @@ -1987,10 +1996,10 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1056 part/admin.py:43 part/models.py:989 +#: common/models.py:1056 part/admin.py:43 part/models.py:990 #: part/templates/part/part_base.html:156 #: templates/js/translated/table_filters.js:42 -#: templates/js/translated/table_filters.js:512 +#: templates/js/translated/table_filters.js:516 msgid "Virtual" msgstr "" @@ -2418,7 +2427,7 @@ msgstr "" msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1461 common/models.py:1803 +#: common/models.py:1461 common/models.py:1810 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -2750,41 +2759,50 @@ msgstr "" msgid "Display part scheduling information" msgstr "" -#: common/models.py:1778 -msgid "Table String Length" +#: common/models.py:1778 part/templates/part/detail.html:61 +#: templates/js/translated/part.js:822 +msgid "Part Stocktake" msgstr "" #: common/models.py:1779 +msgid "Display part stocktake information" +msgstr "" + +#: common/models.py:1785 +msgid "Table String Length" +msgstr "" + +#: common/models.py:1786 msgid "Maximimum length limit for strings displayed in table views" msgstr "" -#: common/models.py:1843 +#: common/models.py:1850 msgid "Price break quantity" msgstr "" -#: common/models.py:1850 company/serializers.py:393 order/models.py:975 -#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1145 +#: common/models.py:1857 company/serializers.py:393 order/models.py:975 +#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1416 #: templates/js/translated/pricing.js:354 msgid "Price" msgstr "" -#: common/models.py:1851 +#: common/models.py:1858 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2011 common/models.py:2189 +#: common/models.py:2018 common/models.py:2196 msgid "Endpoint" msgstr "" -#: common/models.py:2012 +#: common/models.py:2019 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2021 +#: common/models.py:2028 msgid "Name for this webhook" msgstr "" -#: common/models.py:2026 part/admin.py:36 part/models.py:984 +#: common/models.py:2033 part/admin.py:36 part/models.py:985 #: plugin/models.py:100 templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:116 #: templates/js/translated/table_filters.js:336 @@ -2792,131 +2810,133 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:2027 +#: common/models.py:2034 msgid "Is this webhook active" msgstr "" -#: common/models.py:2041 +#: common/models.py:2048 msgid "Token" msgstr "" -#: common/models.py:2042 +#: common/models.py:2049 msgid "Token for access" msgstr "" -#: common/models.py:2049 +#: common/models.py:2056 msgid "Secret" msgstr "" -#: common/models.py:2050 +#: common/models.py:2057 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2156 +#: common/models.py:2163 msgid "Message ID" msgstr "" -#: common/models.py:2157 +#: common/models.py:2164 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2165 +#: common/models.py:2172 msgid "Host" msgstr "" -#: common/models.py:2166 +#: common/models.py:2173 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2173 +#: common/models.py:2180 msgid "Header" msgstr "" -#: common/models.py:2174 +#: common/models.py:2181 msgid "Header of this message" msgstr "" -#: common/models.py:2180 +#: common/models.py:2187 msgid "Body" msgstr "" -#: common/models.py:2181 +#: common/models.py:2188 msgid "Body of this message" msgstr "" -#: common/models.py:2190 +#: common/models.py:2197 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2195 +#: common/models.py:2202 msgid "Worked on" msgstr "" -#: common/models.py:2196 +#: common/models.py:2203 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2355 +#: common/models.py:2362 msgid "Id" msgstr "" -#: common/models.py:2361 templates/js/translated/news.js:35 +#: common/models.py:2368 templates/js/translated/news.js:35 msgid "Title" msgstr "" -#: common/models.py:2371 templates/js/translated/news.js:51 +#: common/models.py:2378 templates/js/translated/news.js:51 msgid "Published" msgstr "" -#: common/models.py:2376 templates/InvenTree/settings/plugin.html:62 +#: common/models.py:2383 templates/InvenTree/settings/plugin.html:62 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/news.js:47 msgid "Author" msgstr "" -#: common/models.py:2381 templates/js/translated/news.js:43 +#: common/models.py:2388 templates/js/translated/news.js:43 msgid "Summary" msgstr "" -#: common/models.py:2386 +#: common/models.py:2393 msgid "Read" msgstr "" -#: common/models.py:2387 +#: common/models.py:2394 msgid "Was this news item read?" msgstr "" -#: common/notifications.py:293 +#: common/notifications.py:294 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:295 +#: common/notifications.py:296 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:301 +#: common/notifications.py:302 msgid "Items Received" msgstr "" -#: common/notifications.py:303 +#: common/notifications.py:304 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:415 +#: common/notifications.py:416 msgid "Error raised by plugin" msgstr "" #: common/views.py:85 order/templates/order/order_wizard/po_upload.html:51 #: order/templates/order/purchase_order_detail.html:25 order/views.py:102 -#: part/views.py:107 templates/patterns/wizard/upload.html:37 +#: part/templates/part/import_wizard/part_upload.html:58 part/views.py:109 +#: templates/patterns/wizard/upload.html:37 msgid "Upload File" msgstr "" #: common/views.py:86 order/templates/order/order_wizard/match_fields.html:52 #: order/views.py:103 #: part/templates/part/import_wizard/ajax_match_fields.html:45 -#: part/views.py:108 templates/patterns/wizard/match_fields.html:51 +#: part/templates/part/import_wizard/match_fields.html:52 part/views.py:110 +#: templates/patterns/wizard/match_fields.html:51 msgid "Match Fields" msgstr "" @@ -2935,7 +2955,9 @@ msgstr "" #: common/views.py:509 order/templates/order/order_wizard/match_fields.html:27 #: order/templates/order/order_wizard/match_parts.html:19 #: order/templates/order/order_wizard/po_upload.html:49 +#: part/templates/part/import_wizard/match_fields.html:27 #: part/templates/part/import_wizard/match_references.html:19 +#: part/templates/part/import_wizard/part_upload.html:56 #: templates/patterns/wizard/match_fields.html:26 #: templates/patterns/wizard/upload.html:35 msgid "Previous Step" @@ -2996,7 +3018,7 @@ msgstr "" msgid "Link to external company information" msgstr "" -#: company/models.py:140 part/models.py:878 +#: company/models.py:140 part/models.py:879 msgid "Image" msgstr "" @@ -3029,8 +3051,8 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:153 company/serializers.py:399 -#: company/templates/company/company_base.html:107 part/models.py:2762 -#: part/serializers.py:154 part/serializers.py:182 stock/serializers.py:182 +#: company/templates/company/company_base.html:107 part/models.py:2780 +#: part/serializers.py:156 part/serializers.py:184 stock/serializers.py:182 #: templates/InvenTree/settings/pricing.html:64 msgid "Currency" msgstr "" @@ -3056,12 +3078,12 @@ msgstr "" #: templates/js/translated/company.js:433 #: templates/js/translated/company.js:534 #: templates/js/translated/company.js:669 -#: templates/js/translated/company.js:957 templates/js/translated/part.js:238 +#: templates/js/translated/company.js:957 templates/js/translated/part.js:241 #: templates/js/translated/table_filters.js:439 msgid "Manufacturer" msgstr "" -#: company/models.py:269 templates/js/translated/part.js:239 +#: company/models.py:269 templates/js/translated/part.js:242 msgid "Select manufacturer" msgstr "" @@ -3071,11 +3093,11 @@ msgstr "" #: templates/js/translated/company.js:533 #: templates/js/translated/company.js:685 #: templates/js/translated/company.js:976 templates/js/translated/order.js:2286 -#: templates/js/translated/part.js:249 templates/js/translated/part.js:1067 +#: templates/js/translated/part.js:252 templates/js/translated/part.js:1338 msgid "MPN" msgstr "" -#: company/models.py:276 templates/js/translated/part.js:250 +#: company/models.py:276 templates/js/translated/part.js:253 msgid "Manufacturer Part Number" msgstr "" @@ -3101,8 +3123,8 @@ msgstr "" #: company/models.py:370 #: report/templates/report/inventree_test_report_base.html:95 #: stock/models.py:2156 templates/js/translated/company.js:582 -#: templates/js/translated/company.js:800 templates/js/translated/part.js:889 -#: templates/js/translated/stock.js:1399 +#: templates/js/translated/company.js:800 templates/js/translated/part.js:1160 +#: templates/js/translated/stock.js:1398 msgid "Value" msgstr "" @@ -3110,10 +3132,10 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:377 part/admin.py:26 part/models.py:951 -#: part/models.py:3128 part/templates/part/part_base.html:286 -#: templates/InvenTree/settings/settings.html:349 -#: templates/js/translated/company.js:806 templates/js/translated/part.js:895 +#: company/models.py:377 part/admin.py:26 part/models.py:952 +#: part/models.py:3206 part/templates/part/part_base.html:286 +#: templates/InvenTree/settings/settings.html:350 +#: templates/js/translated/company.js:806 templates/js/translated/part.js:1166 msgid "Units" msgstr "" @@ -3133,24 +3155,24 @@ msgstr "" #: templates/js/translated/company.js:304 #: templates/js/translated/company.js:437 #: templates/js/translated/company.js:930 templates/js/translated/order.js:2017 -#: templates/js/translated/part.js:219 templates/js/translated/part.js:1035 +#: templates/js/translated/part.js:222 templates/js/translated/part.js:1306 #: templates/js/translated/pricing.js:231 #: templates/js/translated/table_filters.js:443 msgid "Supplier" msgstr "" -#: company/models.py:498 templates/js/translated/part.js:220 +#: company/models.py:498 templates/js/translated/part.js:223 msgid "Select supplier" msgstr "" #: company/models.py:503 company/templates/company/supplier_part.html:146 #: part/bom.py:253 part/bom.py:281 templates/js/translated/company.js:303 -#: templates/js/translated/order.js:2273 templates/js/translated/part.js:230 -#: templates/js/translated/part.js:1053 templates/js/translated/pricing.js:243 +#: templates/js/translated/order.js:2273 templates/js/translated/part.js:233 +#: templates/js/translated/part.js:1324 templates/js/translated/pricing.js:243 msgid "SKU" msgstr "" -#: company/models.py:504 templates/js/translated/part.js:231 +#: company/models.py:504 templates/js/translated/part.js:234 msgid "Supplier stock keeping unit" msgstr "" @@ -3167,24 +3189,25 @@ msgid "Supplier part description" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:181 -#: part/admin.py:225 part/models.py:3381 part/templates/part/upload_bom.html:59 +#: part/admin.py:258 part/models.py:3459 part/templates/part/upload_bom.html:59 +#: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:397 msgid "Note" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "base cost" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:534 company/templates/company/supplier_part.html:167 #: stock/admin.py:101 stock/models.py:682 #: stock/templates/stock/item_base.html:243 -#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2016 +#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2011 msgid "Packaging" msgstr "" @@ -3197,7 +3220,7 @@ msgstr "" #: templates/js/translated/company.js:997 templates/js/translated/order.js:826 #: templates/js/translated/order.js:1253 templates/js/translated/order.js:1508 #: templates/js/translated/order.js:2317 templates/js/translated/order.js:2334 -#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1137 +#: templates/js/translated/part.js:1356 templates/js/translated/part.js:1408 msgid "Pack Quantity" msgstr "" @@ -3205,7 +3228,7 @@ msgstr "" msgid "Unit quantity supplied in a single pack" msgstr "" -#: company/models.py:544 part/models.py:1863 +#: company/models.py:544 part/models.py:1869 msgid "multiple" msgstr "" @@ -3217,8 +3240,8 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:1118 templates/js/translated/build.js:1883 -#: templates/js/translated/build.js:2770 templates/js/translated/part.js:623 -#: templates/js/translated/part.js:626 +#: templates/js/translated/build.js:2770 templates/js/translated/part.js:626 +#: templates/js/translated/part.js:629 #: templates/js/translated/table_filters.js:206 msgid "Available" msgstr "" @@ -3301,7 +3324,7 @@ msgstr "" #: stock/templates/stock/item_base.html:399 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:429 templates/js/translated/order.js:2827 -#: templates/js/translated/stock.js:2607 +#: templates/js/translated/stock.js:2602 #: templates/js/translated/table_filters.js:447 msgid "Customer" msgstr "" @@ -3315,7 +3338,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:206 -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:525 msgid "Remove Image" msgstr "" @@ -3324,19 +3347,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:209 -#: part/templates/part/part_base.html:514 +#: part/templates/part/part_base.html:528 #: templates/InvenTree/settings/user.html:87 #: templates/InvenTree/settings/user.html:149 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:238 -#: part/templates/part/part_base.html:543 +#: part/templates/part/part_base.html:557 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:253 -#: part/templates/part/part_base.html:598 +#: part/templates/part/part_base.html:612 msgid "Download Image" msgstr "" @@ -3352,7 +3375,7 @@ msgstr "" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:357 +#: part/templates/part/detail.html:380 msgid "New Supplier Part" msgstr "" @@ -3381,7 +3404,7 @@ msgstr "" msgid "Create new manufacturer part" msgstr "" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:387 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:410 msgid "New Manufacturer Part" msgstr "" @@ -3395,9 +3418,9 @@ msgstr "" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:35 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:35 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:200 -#: templates/InvenTree/settings/sidebar.html:49 +#: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:293 templates/navbar.html:50 #: users/models.py:42 msgid "Purchase Orders" @@ -3418,9 +3441,9 @@ msgstr "" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:39 +#: part/templates/part/detail.html:130 part/templates/part/part_sidebar.html:39 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:220 -#: templates/InvenTree/settings/sidebar.html:51 +#: templates/InvenTree/settings/sidebar.html:53 #: templates/js/translated/search.js:317 templates/navbar.html:61 #: users/models.py:43 msgid "Sales Orders" @@ -3452,7 +3475,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:221 -#: part/templates/part/detail.html:87 part/templates/part/part_base.html:85 +#: part/templates/part/detail.html:110 part/templates/part/part_base.html:85 msgid "Order part" msgstr "" @@ -3483,28 +3506,28 @@ msgid "Suppliers" msgstr "" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:368 +#: part/templates/part/detail.html:391 msgid "Delete supplier parts" msgstr "" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:369 part/templates/part/detail.html:399 -#: templates/js/translated/forms.js:455 templates/js/translated/helpers.js:38 -#: templates/js/translated/part.js:351 templates/js/translated/stock.js:188 -#: users/models.py:224 +#: part/templates/part/detail.html:392 part/templates/part/detail.html:422 +#: templates/js/translated/forms.js:458 templates/js/translated/helpers.js:38 +#: templates/js/translated/part.js:354 templates/js/translated/stock.js:187 +#: users/models.py:225 msgid "Delete" msgstr "" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:184 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:207 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:189 +#: part/templates/part/detail.html:212 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:62 msgid "New Parameter" @@ -3515,7 +3538,7 @@ msgid "Delete parameters" msgstr "" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:825 +#: part/templates/part/detail.html:865 msgid "Add Parameter" msgstr "" @@ -3539,7 +3562,7 @@ msgstr "" #: company/templates/company/supplier_part.html:24 stock/models.py:665 #: stock/templates/stock/item_base.html:236 #: templates/js/translated/company.js:946 templates/js/translated/order.js:1173 -#: templates/js/translated/stock.js:1974 +#: templates/js/translated/stock.js:1969 msgid "Supplier Part" msgstr "" @@ -3579,7 +3602,7 @@ msgstr "" #: company/templates/company/supplier_part.html:56 #: company/templates/company/supplier_part.html:57 #: company/templates/company/supplier_part.html:222 -#: part/templates/part/detail.html:88 +#: part/templates/part/detail.html:111 msgid "Order Part" msgstr "" @@ -3631,7 +3654,7 @@ msgstr "" #: company/templates/company/supplier_part.html:204 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:198 -#: templates/js/translated/stock.js:467 +#: templates/js/translated/stock.js:466 msgid "New Stock Item" msgstr "" @@ -3663,10 +3686,10 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 -#: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/part.js:777 templates/js/translated/part.js:1371 -#: templates/js/translated/part.js:1527 templates/js/translated/stock.js:994 -#: templates/js/translated/stock.js:1799 templates/navbar.html:31 +#: templates/InvenTree/settings/sidebar.html:47 +#: templates/js/translated/part.js:1048 templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1805 templates/js/translated/stock.js:993 +#: templates/js/translated/stock.js:1794 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3681,7 +3704,7 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:29 #: part/templates/part/part_sidebar.html:30 -#: templates/InvenTree/settings/sidebar.html:35 +#: templates/InvenTree/settings/sidebar.html:37 msgid "Pricing" msgstr "" @@ -3693,7 +3716,7 @@ msgstr "" #: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:155 templates/js/translated/search.js:225 -#: templates/js/translated/stock.js:2484 users/models.py:40 +#: templates/js/translated/stock.js:2479 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3802,9 +3825,9 @@ msgstr "" #: stock/templates/stock/item_base.html:182 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:619 templates/js/translated/order.js:1174 -#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1012 -#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1954 -#: templates/js/translated/stock.js:2588 +#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1283 +#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1949 +#: templates/js/translated/stock.js:2583 msgid "Purchase Order" msgstr "" @@ -3974,7 +3997,7 @@ msgstr "" #: order/models.py:1046 order/templates/order/order_base.html:178 #: templates/js/translated/order.js:1679 templates/js/translated/order.js:2404 -#: templates/js/translated/part.js:1129 templates/js/translated/part.js:1161 +#: templates/js/translated/part.js:1400 templates/js/translated/part.js:1432 #: templates/js/translated/table_filters.js:358 msgid "Received" msgstr "" @@ -3985,7 +4008,7 @@ msgstr "" #: order/models.py:1054 stock/models.py:800 stock/serializers.py:173 #: stock/templates/stock/item_base.html:189 -#: templates/js/translated/stock.js:2005 +#: templates/js/translated/stock.js:2000 msgid "Purchase Price" msgstr "" @@ -4351,18 +4374,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:9 #: part/templates/part/import_wizard/ajax_match_fields.html:9 +#: part/templates/part/import_wizard/match_fields.html:9 #: templates/patterns/wizard/match_fields.html:8 msgid "Missing selections for the following required columns" msgstr "" #: order/templates/order/order_wizard/match_fields.html:20 #: part/templates/part/import_wizard/ajax_match_fields.html:20 +#: part/templates/part/import_wizard/match_fields.html:20 #: templates/patterns/wizard/match_fields.html:19 msgid "Duplicate selections found, see below. Fix them then retry submitting." msgstr "" #: order/templates/order/order_wizard/match_fields.html:29 #: order/templates/order/order_wizard/match_parts.html:21 +#: part/templates/part/import_wizard/match_fields.html:29 #: part/templates/part/import_wizard/match_references.html:21 #: templates/patterns/wizard/match_fields.html:28 msgid "Submit Selections" @@ -4370,18 +4396,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:35 #: part/templates/part/import_wizard/ajax_match_fields.html:28 +#: part/templates/part/import_wizard/match_fields.html:35 #: templates/patterns/wizard/match_fields.html:34 msgid "File Fields" msgstr "" #: order/templates/order/order_wizard/match_fields.html:42 #: part/templates/part/import_wizard/ajax_match_fields.html:35 +#: part/templates/part/import_wizard/match_fields.html:42 #: templates/patterns/wizard/match_fields.html:41 msgid "Remove column" msgstr "" #: order/templates/order/order_wizard/match_fields.html:60 #: part/templates/part/import_wizard/ajax_match_fields.html:53 +#: part/templates/part/import_wizard/match_fields.html:60 #: templates/patterns/wizard/match_fields.html:59 msgid "Duplicate selection" msgstr "" @@ -4390,12 +4419,13 @@ msgstr "" #: order/templates/order/order_wizard/match_parts.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: 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:102 templates/js/translated/build.js:485 #: templates/js/translated/build.js:641 templates/js/translated/build.js:2088 #: templates/js/translated/order.js:1122 templates/js/translated/order.js:1624 -#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:657 -#: templates/js/translated/stock.js:825 +#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:824 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4430,6 +4460,7 @@ msgstr "" #: order/templates/order/order_wizard/po_upload.html:27 #: part/templates/part/import_wizard/ajax_part_upload.html:10 +#: part/templates/part/import_wizard/part_upload.html:26 #: templates/patterns/wizard/upload.html:13 #, python-format msgid "Step %(step)s of %(count)s" @@ -4568,12 +4599,12 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:19 part/admin.py:219 part/models.py:3262 stock/admin.py:84 +#: part/admin.py:19 part/admin.py:252 part/models.py:3340 stock/admin.py:84 #: templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/admin.py:20 part/admin.py:221 part/models.py:3266 stock/admin.py:85 +#: part/admin.py:20 part/admin.py:254 part/models.py:3344 stock/admin.py:85 msgid "Part Name" msgstr "" @@ -4581,32 +4612,32 @@ msgstr "" msgid "Part Description" msgstr "" -#: part/admin.py:22 part/models.py:852 part/templates/part/part_base.html:272 -#: templates/js/translated/part.js:763 templates/js/translated/part.js:1484 -#: templates/js/translated/stock.js:1765 +#: part/admin.py:22 part/models.py:853 part/templates/part/part_base.html:272 +#: templates/js/translated/part.js:1034 templates/js/translated/part.js:1762 +#: templates/js/translated/stock.js:1760 msgid "IPN" msgstr "" -#: part/admin.py:23 part/models.py:860 part/templates/part/part_base.html:279 -#: report/models.py:171 templates/js/translated/part.js:768 +#: part/admin.py:23 part/models.py:861 part/templates/part/part_base.html:279 +#: report/models.py:171 templates/js/translated/part.js:1039 msgid "Revision" msgstr "" -#: part/admin.py:24 part/admin.py:145 part/models.py:838 +#: part/admin.py:24 part/admin.py:178 part/models.py:839 #: part/templates/part/category.html:87 part/templates/part/part_base.html:300 msgid "Keywords" msgstr "" -#: part/admin.py:28 part/admin.py:139 +#: part/admin.py:28 part/admin.py:172 #: templates/js/translated/model_renderers.js:338 msgid "Category ID" msgstr "" -#: part/admin.py:29 part/admin.py:140 +#: part/admin.py:29 part/admin.py:173 msgid "Category Name" msgstr "" -#: part/admin.py:30 part/admin.py:144 +#: part/admin.py:30 part/admin.py:177 msgid "Default Location ID" msgstr "" @@ -4614,7 +4645,7 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:33 part/models.py:944 part/templates/part/part_base.html:206 +#: part/admin.py:33 part/models.py:945 part/templates/part/part_base.html:206 msgid "Minimum Stock" msgstr "" @@ -4626,8 +4657,8 @@ msgstr "" #: part/admin.py:48 part/bom.py:145 part/templates/part/part_base.html:213 #: templates/js/translated/bom.js:1156 templates/js/translated/build.js:1935 -#: templates/js/translated/part.js:613 templates/js/translated/part.js:633 -#: templates/js/translated/part.js:1374 templates/js/translated/part.js:1552 +#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 +#: templates/js/translated/part.js:1652 templates/js/translated/part.js:1830 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4643,115 +4674,115 @@ msgid "Allocated" msgstr "" #: part/admin.py:51 part/templates/part/part_base.html:244 -#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 -#: templates/js/translated/part.js:1378 templates/js/translated/part.js:1559 +#: templates/js/translated/part.js:619 templates/js/translated/part.js:639 +#: templates/js/translated/part.js:1656 templates/js/translated/part.js:1837 msgid "Building" msgstr "" -#: part/admin.py:52 part/models.py:2846 +#: part/admin.py:52 part/models.py:2864 msgid "Minimum Cost" msgstr "" -#: part/admin.py:53 part/models.py:2852 +#: part/admin.py:53 part/models.py:2870 msgid "Maximum Cost" msgstr "" -#: part/admin.py:142 part/admin.py:216 stock/admin.py:26 stock/admin.py:98 +#: part/admin.py:175 part/admin.py:249 stock/admin.py:26 stock/admin.py:98 msgid "Parent ID" msgstr "" -#: part/admin.py:143 part/admin.py:218 stock/admin.py:27 +#: part/admin.py:176 part/admin.py:251 stock/admin.py:27 msgid "Parent Name" msgstr "" -#: part/admin.py:146 part/templates/part/category.html:81 +#: part/admin.py:179 part/templates/part/category.html:81 #: part/templates/part/category.html:94 msgid "Category Path" msgstr "" -#: part/admin.py:149 part/models.py:382 part/templates/part/cat_link.html:3 +#: part/admin.py:182 part/models.py:383 part/templates/part/cat_link.html:3 #: part/templates/part/category.html:23 part/templates/part/category.html:134 #: part/templates/part/category.html:154 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:84 -#: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:2058 templates/js/translated/search.js:146 +#: templates/InvenTree/settings/sidebar.html:43 +#: templates/js/translated/part.js:2346 templates/js/translated/search.js:146 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" -#: part/admin.py:211 +#: part/admin.py:244 msgid "BOM Level" msgstr "" -#: part/admin.py:213 +#: part/admin.py:246 msgid "BOM Item ID" msgstr "" -#: part/admin.py:217 +#: part/admin.py:250 msgid "Parent IPN" msgstr "" -#: part/admin.py:220 part/models.py:3270 +#: part/admin.py:253 part/models.py:3348 msgid "Part IPN" msgstr "" -#: part/admin.py:226 templates/js/translated/pricing.js:91 +#: part/admin.py:259 templates/js/translated/pricing.js:91 #: templates/js/translated/pricing.js:732 msgid "Minimum Price" msgstr "" -#: part/admin.py:227 templates/js/translated/pricing.js:86 +#: part/admin.py:260 templates/js/translated/pricing.js:86 #: templates/js/translated/pricing.js:740 msgid "Maximum Price" msgstr "" -#: part/api.py:536 +#: part/api.py:538 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:556 +#: part/api.py:558 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:574 +#: part/api.py:576 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:660 +#: part/api.py:662 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:818 +#: part/api.py:820 msgid "Valid" msgstr "" -#: part/api.py:819 +#: part/api.py:821 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:825 +#: part/api.py:827 msgid "This option must be selected" msgstr "" -#: part/api.py:1265 +#: part/api.py:1281 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1269 +#: part/api.py:1285 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1284 +#: part/api.py:1300 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1315 part/api.py:1319 part/api.py:1334 part/api.py:1338 +#: part/api.py:1331 part/api.py:1335 part/api.py:1350 part/api.py:1354 msgid "This field is required" msgstr "" -#: part/bom.py:142 part/models.py:116 part/models.py:887 -#: part/templates/part/category.html:109 part/templates/part/part_base.html:360 +#: part/bom.py:142 part/models.py:116 part/models.py:888 +#: part/templates/part/category.html:109 part/templates/part/part_base.html:374 msgid "Default Location" msgstr "" @@ -4802,7 +4833,7 @@ msgstr "" msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:159 part/models.py:3211 part/templates/part/category.html:16 +#: part/models.py:159 part/models.py:3289 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -4813,423 +4844,459 @@ msgstr "" msgid "Part Categories" msgstr "" -#: part/models.py:468 +#: part/models.py:469 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:538 part/models.py:550 +#: part/models.py:539 part/models.py:551 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:640 +#: part/models.py:641 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:771 +#: part/models.py:772 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:776 +#: part/models.py:777 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:790 +#: part/models.py:791 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:808 part/models.py:3267 +#: part/models.py:809 part/models.py:3345 msgid "Part name" msgstr "" -#: part/models.py:815 +#: part/models.py:816 msgid "Is Template" msgstr "" -#: part/models.py:816 +#: part/models.py:817 msgid "Is this part a template part?" msgstr "" -#: part/models.py:826 +#: part/models.py:827 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:827 +#: part/models.py:828 msgid "Variant Of" msgstr "" -#: part/models.py:833 +#: part/models.py:834 msgid "Part description" msgstr "" -#: part/models.py:839 +#: part/models.py:840 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:846 part/models.py:2966 part/models.py:3210 +#: part/models.py:847 part/models.py:3044 part/models.py:3288 #: part/templates/part/part_base.html:263 -#: templates/InvenTree/settings/settings.html:229 +#: templates/InvenTree/settings/settings.html:230 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1506 templates/js/translated/part.js:1763 +#: templates/js/translated/part.js:1784 templates/js/translated/part.js:2051 msgid "Category" msgstr "" -#: part/models.py:847 +#: part/models.py:848 msgid "Part category" msgstr "" -#: part/models.py:853 +#: part/models.py:854 msgid "Internal Part Number" msgstr "" -#: part/models.py:859 +#: part/models.py:860 msgid "Part revision or version number" msgstr "" -#: part/models.py:885 +#: part/models.py:886 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:930 part/templates/part/part_base.html:369 +#: part/models.py:931 part/templates/part/part_base.html:383 msgid "Default Supplier" msgstr "" -#: part/models.py:931 +#: part/models.py:932 msgid "Default supplier part" msgstr "" -#: part/models.py:938 +#: part/models.py:939 msgid "Default Expiry" msgstr "" -#: part/models.py:939 +#: part/models.py:940 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:945 +#: part/models.py:946 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:952 +#: part/models.py:953 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:958 +#: part/models.py:959 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:964 +#: part/models.py:965 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:970 +#: part/models.py:971 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:975 +#: part/models.py:976 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:980 +#: part/models.py:981 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:985 +#: part/models.py:986 msgid "Is this part active?" msgstr "" -#: part/models.py:990 +#: part/models.py:991 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:992 +#: part/models.py:993 msgid "Part notes" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "BOM checksum" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:997 +#: part/models.py:998 msgid "BOM checked by" msgstr "" -#: part/models.py:999 +#: part/models.py:1000 msgid "BOM checked date" msgstr "" -#: part/models.py:1003 +#: part/models.py:1004 msgid "Creation User" msgstr "" -#: part/models.py:1863 +#: part/models.py:1010 part/templates/part/part_base.html:345 +#: stock/templates/stock/item_base.html:445 +#: templates/js/translated/part.js:1901 +msgid "Last Stocktake" +msgstr "" + +#: part/models.py:1869 msgid "Sell multiple" msgstr "" -#: part/models.py:2763 +#: part/models.py:2781 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:2768 +#: part/models.py:2786 templates/js/translated/part.js:806 msgid "Updated" msgstr "" -#: part/models.py:2769 +#: part/models.py:2787 msgid "Timestamp of last pricing update" msgstr "" -#: part/models.py:2786 +#: part/models.py:2804 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:2787 +#: part/models.py:2805 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:2792 +#: part/models.py:2810 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:2793 +#: part/models.py:2811 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:2798 +#: part/models.py:2816 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:2799 +#: part/models.py:2817 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:2804 +#: part/models.py:2822 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:2805 +#: part/models.py:2823 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:2810 +#: part/models.py:2828 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:2811 +#: part/models.py:2829 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:2816 +#: part/models.py:2834 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:2817 +#: part/models.py:2835 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:2822 +#: part/models.py:2840 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:2823 +#: part/models.py:2841 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:2828 +#: part/models.py:2846 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:2829 +#: part/models.py:2847 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:2834 +#: part/models.py:2852 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:2835 +#: part/models.py:2853 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:2840 +#: part/models.py:2858 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:2841 +#: part/models.py:2859 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:2847 +#: part/models.py:2865 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:2853 +#: part/models.py:2871 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:2858 +#: part/models.py:2876 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:2859 +#: part/models.py:2877 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:2864 +#: part/models.py:2882 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:2865 +#: part/models.py:2883 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:2870 +#: part/models.py:2888 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:2871 +#: part/models.py:2889 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:2876 +#: part/models.py:2894 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:2877 +#: part/models.py:2895 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3013 +#: part/models.py:2913 +msgid "Part for stocktake" +msgstr "" + +#: part/models.py:2920 +msgid "Total available stock at time of stocktake" +msgstr "" + +#: part/models.py:2924 part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:63 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:2043 templates/js/translated/part.js:887 +#: templates/js/translated/pricing.js:537 +#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2511 +msgid "Date" +msgstr "" + +#: part/models.py:2925 +msgid "Date stocktake was performed" +msgstr "" + +#: part/models.py:2933 +msgid "Additional notes" +msgstr "" + +#: part/models.py:2941 +msgid "User who performed this stocktake" +msgstr "" + +#: part/models.py:3091 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3030 +#: part/models.py:3108 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:3050 templates/js/translated/part.js:2109 -#: templates/js/translated/stock.js:1379 +#: part/models.py:3128 templates/js/translated/part.js:2397 +#: templates/js/translated/stock.js:1378 msgid "Test Name" msgstr "" -#: part/models.py:3051 +#: part/models.py:3129 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3056 +#: part/models.py:3134 msgid "Test Description" msgstr "" -#: part/models.py:3057 +#: part/models.py:3135 msgid "Enter description for this test" msgstr "" -#: part/models.py:3062 templates/js/translated/part.js:2118 +#: part/models.py:3140 templates/js/translated/part.js:2406 #: templates/js/translated/table_filters.js:322 msgid "Required" msgstr "" -#: part/models.py:3063 +#: part/models.py:3141 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3068 templates/js/translated/part.js:2126 +#: part/models.py:3146 templates/js/translated/part.js:2414 msgid "Requires Value" msgstr "" -#: part/models.py:3069 +#: part/models.py:3147 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3074 templates/js/translated/part.js:2133 +#: part/models.py:3152 templates/js/translated/part.js:2421 msgid "Requires Attachment" msgstr "" -#: part/models.py:3075 +#: part/models.py:3153 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3116 +#: part/models.py:3194 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3124 +#: part/models.py:3202 msgid "Parameter Name" msgstr "" -#: part/models.py:3128 +#: part/models.py:3206 msgid "Parameter Units" msgstr "" -#: part/models.py:3133 +#: part/models.py:3211 msgid "Parameter description" msgstr "" -#: part/models.py:3166 +#: part/models.py:3244 msgid "Parent Part" msgstr "" -#: part/models.py:3168 part/models.py:3216 part/models.py:3217 -#: templates/InvenTree/settings/settings.html:224 +#: part/models.py:3246 part/models.py:3294 part/models.py:3295 +#: templates/InvenTree/settings/settings.html:225 msgid "Parameter Template" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Data" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Parameter Value" msgstr "" -#: part/models.py:3221 templates/InvenTree/settings/settings.html:233 +#: part/models.py:3299 templates/InvenTree/settings/settings.html:234 msgid "Default Value" msgstr "" -#: part/models.py:3222 +#: part/models.py:3300 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3259 +#: part/models.py:3337 msgid "Part ID or part name" msgstr "" -#: part/models.py:3263 +#: part/models.py:3341 msgid "Unique part ID value" msgstr "" -#: part/models.py:3271 +#: part/models.py:3349 msgid "Part IPN value" msgstr "" -#: part/models.py:3274 +#: part/models.py:3352 msgid "Level" msgstr "" -#: part/models.py:3275 +#: part/models.py:3353 msgid "BOM level" msgstr "" -#: part/models.py:3344 +#: part/models.py:3422 msgid "Select parent part" msgstr "" -#: part/models.py:3352 +#: part/models.py:3430 msgid "Sub part" msgstr "" -#: part/models.py:3353 +#: part/models.py:3431 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:3359 +#: part/models.py:3437 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:3363 part/templates/part/upload_bom.html:58 +#: part/models.py:3441 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:933 templates/js/translated/bom.js:986 #: templates/js/translated/build.js:1868 #: templates/js/translated/table_filters.js:84 @@ -5237,189 +5304,189 @@ msgstr "" msgid "Optional" msgstr "" -#: part/models.py:3364 +#: part/models.py:3442 msgid "This BOM item is optional" msgstr "" -#: part/models.py:3369 templates/js/translated/bom.js:929 +#: part/models.py:3447 templates/js/translated/bom.js:929 #: templates/js/translated/bom.js:995 templates/js/translated/build.js:1859 #: templates/js/translated/table_filters.js:88 msgid "Consumable" msgstr "" -#: part/models.py:3370 +#: part/models.py:3448 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:3374 part/templates/part/upload_bom.html:55 +#: part/models.py:3452 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:3375 +#: part/models.py:3453 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:3378 +#: part/models.py:3456 msgid "BOM item reference" msgstr "" -#: part/models.py:3381 +#: part/models.py:3459 msgid "BOM item notes" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "Checksum" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "BOM line checksum" msgstr "" -#: part/models.py:3387 part/templates/part/upload_bom.html:57 +#: part/models.py:3465 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1012 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:108 msgid "Inherited" msgstr "" -#: part/models.py:3388 +#: part/models.py:3466 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:3393 part/templates/part/upload_bom.html:56 +#: part/models.py:3471 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1004 msgid "Allow Variants" msgstr "" -#: part/models.py:3394 +#: part/models.py:3472 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:3480 stock/models.py:558 +#: part/models.py:3558 stock/models.py:558 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:3489 part/models.py:3491 +#: part/models.py:3567 part/models.py:3569 msgid "Sub part must be specified" msgstr "" -#: part/models.py:3618 +#: part/models.py:3696 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:3639 +#: part/models.py:3717 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:3652 +#: part/models.py:3730 msgid "Parent BOM item" msgstr "" -#: part/models.py:3660 +#: part/models.py:3738 msgid "Substitute part" msgstr "" -#: part/models.py:3675 +#: part/models.py:3753 msgid "Part 1" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Part 2" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Select Related Part" msgstr "" -#: part/models.py:3697 +#: part/models.py:3775 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:3701 +#: part/models.py:3779 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:155 part/serializers.py:183 stock/serializers.py:183 +#: part/serializers.py:157 part/serializers.py:185 stock/serializers.py:183 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:543 +#: part/serializers.py:584 msgid "Update" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:585 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:854 +#: part/serializers.py:895 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:862 +#: part/serializers.py:903 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:863 +#: part/serializers.py:904 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:868 +#: part/serializers.py:909 msgid "Include Inherited" msgstr "" -#: part/serializers.py:869 +#: part/serializers.py:910 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:874 +#: part/serializers.py:915 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:875 +#: part/serializers.py:916 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:921 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:881 +#: part/serializers.py:922 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:962 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:922 +#: part/serializers.py:963 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:952 +#: part/serializers.py:993 msgid "No part column specified" msgstr "" -#: part/serializers.py:995 +#: part/serializers.py:1036 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:998 +#: part/serializers.py:1039 msgid "No matching part found" msgstr "" -#: part/serializers.py:1001 +#: part/serializers.py:1042 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1010 +#: part/serializers.py:1051 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1059 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1039 +#: part/serializers.py:1080 msgid "At least one BOM item is required" msgstr "" @@ -5451,7 +5518,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:267 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:290 msgid "BOM actions" msgstr "" @@ -5508,8 +5575,8 @@ msgstr "" msgid "New Part" msgstr "" -#: part/templates/part/category.html:169 part/templates/part/detail.html:366 -#: part/templates/part/detail.html:397 +#: part/templates/part/category.html:169 part/templates/part/detail.html:389 +#: part/templates/part/detail.html:420 msgid "Options" msgstr "" @@ -5557,7 +5624,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:404 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:407 msgid "Duplicate Part" msgstr "" @@ -5594,118 +5661,128 @@ msgstr "" msgid "Refresh" msgstr "" -#: part/templates/part/detail.html:59 +#: part/templates/part/detail.html:65 +msgid "Add stocktake information" +msgstr "" + +#: part/templates/part/detail.html:66 part/templates/part/part_sidebar.html:49 +#: stock/admin.py:107 templates/js/translated/stock.js:1905 +msgid "Stocktake" +msgstr "" + +#: part/templates/part/detail.html:82 msgid "Part Test Templates" msgstr "" -#: part/templates/part/detail.html:64 +#: part/templates/part/detail.html:87 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:144 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:141 +#: part/templates/part/detail.html:164 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:156 +#: part/templates/part/detail.html:179 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:160 +#: part/templates/part/detail.html:183 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:161 +#: part/templates/part/detail.html:184 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:188 +#: part/templates/part/detail.html:211 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:225 part/templates/part/part_sidebar.html:52 +#: part/templates/part/detail.html:248 part/templates/part/part_sidebar.html:57 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:229 part/templates/part/detail.html:230 +#: part/templates/part/detail.html:252 part/templates/part/detail.html:253 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:250 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:273 part/templates/part/part_sidebar.html:17 +#: report/templates/report/inventree_bill_of_materials_report.html:100 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:255 +#: part/templates/part/detail.html:278 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:259 templates/js/translated/bom.js:309 +#: part/templates/part/detail.html:282 templates/js/translated/bom.js:309 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:261 +#: part/templates/part/detail.html:284 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:271 +#: part/templates/part/detail.html:294 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:272 templates/js/translated/part.js:276 +#: part/templates/part/detail.html:295 templates/js/translated/part.js:279 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:273 +#: part/templates/part/detail.html:296 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:278 part/templates/part/detail.html:279 +#: part/templates/part/detail.html:301 part/templates/part/detail.html:302 #: templates/js/translated/bom.js:1268 templates/js/translated/bom.js:1269 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:292 +#: part/templates/part/detail.html:315 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:310 +#: part/templates/part/detail.html:333 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:337 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:360 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:353 +#: part/templates/part/detail.html:376 msgid "Part Suppliers" msgstr "" -#: part/templates/part/detail.html:383 +#: part/templates/part/detail.html:406 msgid "Part Manufacturers" msgstr "" -#: part/templates/part/detail.html:399 +#: part/templates/part/detail.html:422 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:696 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:704 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:796 msgid "Add Test Result Template" msgstr "" #: part/templates/part/import_wizard/ajax_part_upload.html:29 #: part/templates/part/import_wizard/part_upload.html:14 -msgid "Unsuffitient privileges." +msgid "Insufficient privileges." msgstr "" #: part/templates/part/import_wizard/part_upload.html:8 @@ -5716,6 +5793,34 @@ msgstr "" msgid "Import Parts from File" msgstr "" +#: part/templates/part/import_wizard/part_upload.html:31 +msgid "Requirements for part import" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "The part import file must contain the required named columns as provided in the " +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:89 +msgid "Download Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:92 +#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 +#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 +msgid "Format" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:93 +#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 +#: templates/js/translated/order.js:999 +msgid "Select file format" +msgstr "" + #: part/templates/part/part_app_base.html:12 msgid "Part List" msgstr "" @@ -5805,12 +5910,12 @@ msgstr "" #: templates/js/translated/company.js:660 #: templates/js/translated/company.js:921 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:677 templates/js/translated/part.js:755 +#: templates/js/translated/part.js:680 templates/js/translated/part.js:1026 msgid "Inactive" msgstr "" #: part/templates/part/part_base.html:165 -#: part/templates/part/part_base.html:666 +#: part/templates/part/part_base.html:680 msgid "Show Part Details" msgstr "" @@ -5838,38 +5943,38 @@ msgid "Minimum stock level" msgstr "" #: part/templates/part/part_base.html:330 templates/js/translated/bom.js:1032 -#: templates/js/translated/part.js:798 templates/js/translated/part.js:1597 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:1875 #: templates/js/translated/pricing.js:124 #: templates/js/translated/pricing.js:762 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:345 +#: part/templates/part/part_base.html:359 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:349 +#: part/templates/part/part_base.html:363 #: stock/templates/stock/item_base.html:331 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:449 +#: part/templates/part/part_base.html:463 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:495 +#: part/templates/part/part_base.html:509 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:512 +#: part/templates/part/part_base.html:526 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:564 +#: part/templates/part/part_base.html:578 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:660 +#: part/templates/part/part_base.html:674 msgid "Hide Part Details" msgstr "" @@ -5921,15 +6026,6 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" -#: part/templates/part/part_scheduling.html:13 -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:63 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:2043 templates/js/translated/pricing.js:537 -#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2516 -msgid "Date" -msgstr "" - #: part/templates/part/part_scheduling.html:14 msgid "Scheduled Quantity" msgstr "" @@ -5942,7 +6038,7 @@ msgstr "" msgid "Scheduling" msgstr "" -#: part/templates/part/part_sidebar.html:48 +#: part/templates/part/part_sidebar.html:53 msgid "Test Templates" msgstr "" @@ -5961,7 +6057,7 @@ msgstr "" #: part/templates/part/prices.html:25 stock/admin.py:106 #: stock/templates/stock/item_base.html:440 #: templates/js/translated/company.js:1039 -#: templates/js/translated/stock.js:1940 +#: templates/js/translated/stock.js:1935 msgid "Last Updated" msgstr "" @@ -6024,8 +6120,8 @@ msgstr "" msgid "Add Sell Price Break" msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:639 -#: templates/js/translated/part.js:1366 templates/js/translated/part.js:1368 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:1644 templates/js/translated/part.js:1646 msgid "No Stock" msgstr "" @@ -6088,27 +6184,32 @@ msgstr "" msgid "{title} v{version}" msgstr "" -#: part/views.py:109 +#: part/views.py:111 msgid "Match References" msgstr "" -#: part/views.py:354 +#: part/views.py:239 +#, python-brace-format +msgid "Can't import part {name} because there is no category assigned" +msgstr "" + +#: part/views.py:378 msgid "Part QR Code" msgstr "" -#: part/views.py:372 +#: part/views.py:396 msgid "Select Part Image" msgstr "" -#: part/views.py:398 +#: part/views.py:422 msgid "Updated part image" msgstr "" -#: part/views.py:401 +#: part/views.py:425 msgid "Part image not found" msgstr "" -#: part/views.py:493 +#: part/views.py:517 msgid "Part Pricing" msgstr "" @@ -6157,28 +6258,48 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:29 -#: plugin/builtin/integration/core_notifications.py:31 +#: plugin/builtin/integration/core_notifications.py:33 msgid "InvenTree contributors" msgstr "" -#: plugin/builtin/integration/core_notifications.py:30 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:32 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notificaton methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:37 -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:80 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:38 -#: plugin/builtin/integration/core_notifications.py:57 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:81 msgid "Allow sending of emails for event notifications" msgstr "" +#: plugin/builtin/integration/core_notifications.py:45 +msgid "Enable slack notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:46 +msgid "Allow sending of slack channel messages for event notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:51 +msgid "Slack incoming webhook url" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:52 +msgid "URL that is used to send messages to a slack channel" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:162 +msgid "Open link" +msgstr "" + #: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" @@ -6410,6 +6531,10 @@ msgstr "" msgid "Asset file description" msgstr "" +#: report/templates/report/inventree_bill_of_materials_report.html:133 +msgid "Materials needed" +msgstr "" + #: report/templates/report/inventree_build_order_base.html:146 msgid "Required For" msgstr "" @@ -6428,7 +6553,7 @@ msgstr "" #: templates/js/translated/build.js:1244 templates/js/translated/build.js:1745 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:121 templates/js/translated/order.js:3611 -#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:522 +#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:521 msgid "Serial Number" msgstr "" @@ -6460,8 +6585,9 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: stock/admin.py:87 templates/js/translated/stock.js:642 -#: templates/js/translated/stock.js:812 templates/js/translated/stock.js:2765 +#: stock/admin.py:87 templates/js/translated/part.js:749 +#: templates/js/translated/stock.js:641 templates/js/translated/stock.js:811 +#: templates/js/translated/stock.js:2760 msgid "Serial" msgstr "" @@ -6516,13 +6642,9 @@ msgstr "" msgid "Purchase Order ID" msgstr "" -#: stock/admin.py:107 templates/js/translated/stock.js:1910 -msgid "Stocktake" -msgstr "" - #: stock/admin.py:108 stock/models.py:764 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/stock.js:1924 +#: templates/js/translated/stock.js:1919 msgid "Expiry Date" msgstr "" @@ -6937,7 +7059,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2912 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2907 msgid "Install Stock Item" msgstr "" @@ -6945,7 +7067,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1561 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1560 msgid "Add Test Result" msgstr "" @@ -7118,10 +7240,6 @@ msgstr "" msgid "Stale" msgstr "" -#: stock/templates/stock/item_base.html:445 -msgid "Last Stocktake" -msgstr "" - #: stock/templates/stock/item_base.html:449 msgid "No stocktake performed" msgstr "" @@ -7395,7 +7513,8 @@ msgstr "" #: templates/InvenTree/notifications/notifications.html:10 #: templates/InvenTree/notifications/sidebar.html:5 -#: templates/InvenTree/settings/sidebar.html:17 templates/notifications.html:5 +#: templates/InvenTree/settings/sidebar.html:17 +#: templates/InvenTree/settings/sidebar.html:35 templates/notifications.html:5 msgid "Notifications" msgstr "" @@ -7476,6 +7595,14 @@ msgstr "" msgid "Open in new tab" msgstr "" +#: templates/InvenTree/settings/notifications.html:9 +msgid "Global Notification Settings" +msgstr "" + +#: templates/InvenTree/settings/notifications.html:18 +msgid "Slug" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -7493,7 +7620,7 @@ msgid "Part Parameter Templates" msgstr "" #: templates/InvenTree/settings/plugin.html:10 -#: templates/InvenTree/settings/sidebar.html:55 +#: templates/InvenTree/settings/sidebar.html:57 msgid "Plugin Settings" msgstr "" @@ -7502,7 +7629,7 @@ msgid "Changing the settings below require you to immediately restart the server msgstr "" #: templates/InvenTree/settings/plugin.html:38 -#: templates/InvenTree/settings/sidebar.html:57 +#: templates/InvenTree/settings/sidebar.html:59 msgid "Plugins" msgstr "" @@ -7670,67 +7797,67 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:117 +#: templates/InvenTree/settings/settings.html:118 msgid "Edit Plugin Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:119 +#: templates/InvenTree/settings/settings.html:120 msgid "Edit Notification Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:122 +#: templates/InvenTree/settings/settings.html:123 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:124 +#: templates/InvenTree/settings/settings.html:125 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:214 +#: templates/InvenTree/settings/settings.html:215 msgid "No category parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:236 -#: templates/InvenTree/settings/settings.html:361 -msgid "Edit Template" -msgstr "" - #: templates/InvenTree/settings/settings.html:237 #: templates/InvenTree/settings/settings.html:362 +msgid "Edit Template" +msgstr "" + +#: templates/InvenTree/settings/settings.html:238 +#: templates/InvenTree/settings/settings.html:363 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:277 +#: templates/InvenTree/settings/settings.html:278 msgid "Create Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:322 +#: templates/InvenTree/settings/settings.html:323 msgid "Delete Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:334 +#: templates/InvenTree/settings/settings.html:335 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:338 +#: templates/InvenTree/settings/settings.html:339 #: templates/js/translated/news.js:29 #: templates/js/translated/notification.js:36 msgid "ID" msgstr "" -#: templates/InvenTree/settings/settings.html:380 +#: templates/InvenTree/settings/settings.html:381 msgid "Create Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:399 +#: templates/InvenTree/settings/settings.html:400 msgid "Edit Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:413 +#: templates/InvenTree/settings/settings.html:414 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/InvenTree/settings/settings.html:421 +#: templates/InvenTree/settings/settings.html:422 msgid "Delete Part Parameter Template" msgstr "" @@ -7759,12 +7886,12 @@ msgid "Search Settings" msgstr "" #: templates/InvenTree/settings/sidebar.html:19 -#: templates/InvenTree/settings/sidebar.html:37 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Label Printing" msgstr "" #: templates/InvenTree/settings/sidebar.html:21 -#: templates/InvenTree/settings/sidebar.html:39 +#: templates/InvenTree/settings/sidebar.html:41 msgid "Reporting" msgstr "" @@ -7776,7 +7903,7 @@ msgstr "" msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:43 +#: templates/InvenTree/settings/sidebar.html:45 msgid "Categories" msgstr "" @@ -7946,64 +8073,64 @@ msgstr "" msgid "Do you really want to remove the selected email address?" msgstr "" -#: templates/InvenTree/settings/user_display.html:28 +#: templates/InvenTree/settings/user_display.html:29 msgid "Theme Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:38 +#: templates/InvenTree/settings/user_display.html:39 msgid "Select theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:49 +#: templates/InvenTree/settings/user_display.html:50 msgid "Set Theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:57 +#: templates/InvenTree/settings/user_display.html:58 msgid "Language Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:66 +#: templates/InvenTree/settings/user_display.html:67 msgid "Select language" msgstr "" -#: templates/InvenTree/settings/user_display.html:82 +#: templates/InvenTree/settings/user_display.html:83 #, python-format msgid "%(lang_translated)s%% translated" msgstr "" -#: templates/InvenTree/settings/user_display.html:84 +#: templates/InvenTree/settings/user_display.html:85 msgid "No translations available" msgstr "" -#: templates/InvenTree/settings/user_display.html:91 +#: templates/InvenTree/settings/user_display.html:92 msgid "Set Language" msgstr "" -#: templates/InvenTree/settings/user_display.html:94 +#: templates/InvenTree/settings/user_display.html:95 msgid "Some languages are not complete" msgstr "" -#: templates/InvenTree/settings/user_display.html:96 +#: templates/InvenTree/settings/user_display.html:97 msgid "Show only sufficent" msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "and hidden." msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "Show them too" msgstr "" -#: templates/InvenTree/settings/user_display.html:105 +#: templates/InvenTree/settings/user_display.html:106 msgid "Help the translation efforts!" msgstr "" -#: templates/InvenTree/settings/user_display.html:106 +#: templates/InvenTree/settings/user_display.html:107 msgid "Native language translation of the web application is community contributed via crowdin. Contributions are welcomed and encouraged." msgstr "" -#: templates/InvenTree/settings/user_display.html:107 +#: templates/InvenTree/settings/user_display.html:108 msgid "InvenTree Translation Project" msgstr "" @@ -8081,7 +8208,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:646 +#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:649 msgid "Confirm" msgstr "" @@ -8115,7 +8242,7 @@ msgid "Forgot Password?" msgstr "" #: templates/account/login.html:53 -msgid "or use SSO" +msgid "Sign in using third-party SSO" msgstr "" #: templates/account/logout.html:5 templates/account/logout.html:8 @@ -8316,7 +8443,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 -#: templates/js/translated/part.js:2438 +#: templates/js/translated/part.js:2726 msgid "Minimum Quantity" msgstr "" @@ -8469,7 +8596,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1089 +#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1088 msgid "Remove stock item" msgstr "" @@ -8551,16 +8678,6 @@ msgstr "" msgid "Download BOM Template" msgstr "" -#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 -#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 -msgid "Format" -msgstr "" - -#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 -#: templates/js/translated/order.js:999 -msgid "Select file format" -msgstr "" - #: templates/js/translated/bom.js:320 msgid "Multi Level BOM" msgstr "" @@ -8691,7 +8808,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:1145 templates/js/translated/build.js:1923 -#: templates/js/translated/part.js:790 templates/js/translated/part.js:1565 +#: templates/js/translated/part.js:1061 templates/js/translated/part.js:1843 msgid "Includes variant stock" msgstr "" @@ -8776,13 +8893,13 @@ msgstr "" msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:317 templates/js/translated/stock.js:95 -#: templates/js/translated/stock.js:237 +#: templates/js/translated/build.js:317 templates/js/translated/stock.js:94 +#: templates/js/translated/stock.js:236 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:319 templates/js/translated/stock.js:97 -#: templates/js/translated/stock.js:239 +#: templates/js/translated/build.js:319 templates/js/translated/stock.js:96 +#: templates/js/translated/stock.js:238 msgid "Latest serial number" msgstr "" @@ -8990,9 +9107,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1459 -#: templates/js/translated/part.js:1996 templates/js/translated/stock.js:1725 -#: templates/js/translated/stock.js:2428 +#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1737 +#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1724 +#: templates/js/translated/stock.js:2423 msgid "Select" msgstr "" @@ -9004,7 +9121,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2695 +#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2690 msgid "No user information" msgstr "" @@ -9077,34 +9194,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:652 -#: templates/js/translated/company.js:913 templates/js/translated/part.js:661 -#: templates/js/translated/part.js:747 +#: templates/js/translated/company.js:913 templates/js/translated/part.js:664 +#: templates/js/translated/part.js:1018 msgid "Template part" msgstr "" #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:917 templates/js/translated/part.js:665 -#: templates/js/translated/part.js:751 +#: templates/js/translated/company.js:917 templates/js/translated/part.js:668 +#: templates/js/translated/part.js:1022 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:784 templates/js/translated/part.js:870 +#: templates/js/translated/company.js:784 templates/js/translated/part.js:1141 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:821 templates/js/translated/part.js:912 +#: templates/js/translated/company.js:821 templates/js/translated/part.js:1183 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:822 templates/js/translated/part.js:913 +#: templates/js/translated/company.js:822 templates/js/translated/part.js:1184 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:841 templates/js/translated/part.js:930 +#: templates/js/translated/company.js:841 templates/js/translated/part.js:1201 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:852 templates/js/translated/part.js:942 +#: templates/js/translated/company.js:852 templates/js/translated/part.js:1213 msgid "Delete Parameter" msgstr "" @@ -9184,61 +9301,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:369 templates/js/translated/forms.js:384 -#: templates/js/translated/forms.js:398 templates/js/translated/forms.js:412 +#: templates/js/translated/forms.js:372 templates/js/translated/forms.js:387 +#: templates/js/translated/forms.js:401 templates/js/translated/forms.js:415 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:371 +#: templates/js/translated/forms.js:374 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:386 +#: templates/js/translated/forms.js:389 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:400 +#: templates/js/translated/forms.js:403 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:414 +#: templates/js/translated/forms.js:417 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:672 +#: templates/js/translated/forms.js:675 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:773 +#: templates/js/translated/forms.js:776 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1266 templates/modals.html:19 +#: templates/js/translated/forms.js:1269 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1703 +#: templates/js/translated/forms.js:1706 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1919 templates/search.html:29 +#: templates/js/translated/forms.js:1922 templates/search.html:29 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2172 +#: templates/js/translated/forms.js:2175 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:2640 +#: templates/js/translated/forms.js:2643 msgid "Select Columns" msgstr "" @@ -9259,7 +9376,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1113 +#: templates/js/translated/stock.js:1112 msgid "Select Stock Items" msgstr "" @@ -9593,7 +9710,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2184 +#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2179 msgid "Stock Status" msgstr "" @@ -9617,7 +9734,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1982 templates/js/translated/part.js:983 +#: templates/js/translated/order.js:1982 templates/js/translated/part.js:1254 msgid "No purchase orders found" msgstr "" @@ -9650,8 +9767,8 @@ msgstr "" msgid "Total" msgstr "" -#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1085 -#: templates/js/translated/part.js:1137 +#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1356 +#: templates/js/translated/part.js:1408 msgid "Total Quantity" msgstr "" @@ -9669,11 +9786,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2388 templates/js/translated/order.js:3900 -#: templates/js/translated/part.js:1121 +#: templates/js/translated/part.js:1392 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1166 +#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1437 msgid "Receive line item" msgstr "" @@ -9794,7 +9911,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3623 templates/js/translated/order.js:3712 -#: templates/js/translated/stock.js:1641 +#: templates/js/translated/stock.js:1640 msgid "Shipped to customer" msgstr "" @@ -9838,334 +9955,358 @@ msgstr "" msgid "No matching lines" msgstr "" -#: templates/js/translated/part.js:52 +#: templates/js/translated/part.js:55 msgid "Part Attributes" msgstr "" -#: templates/js/translated/part.js:56 +#: templates/js/translated/part.js:59 msgid "Part Creation Options" msgstr "" -#: templates/js/translated/part.js:60 +#: templates/js/translated/part.js:63 msgid "Part Duplication Options" msgstr "" -#: templates/js/translated/part.js:64 +#: templates/js/translated/part.js:67 msgid "Supplier Options" msgstr "" -#: templates/js/translated/part.js:78 +#: templates/js/translated/part.js:81 msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:168 +#: templates/js/translated/part.js:171 msgid "Create Initial Stock" msgstr "" -#: templates/js/translated/part.js:169 +#: templates/js/translated/part.js:172 msgid "Create an initial stock item for this part" msgstr "" -#: templates/js/translated/part.js:176 +#: templates/js/translated/part.js:179 msgid "Initial Stock Quantity" msgstr "" -#: templates/js/translated/part.js:177 +#: templates/js/translated/part.js:180 msgid "Specify initial stock quantity for this part" msgstr "" -#: templates/js/translated/part.js:184 +#: templates/js/translated/part.js:187 msgid "Select destination stock location" msgstr "" -#: templates/js/translated/part.js:202 +#: templates/js/translated/part.js:205 msgid "Copy Category Parameters" msgstr "" -#: templates/js/translated/part.js:203 +#: templates/js/translated/part.js:206 msgid "Copy parameter templates from selected part category" msgstr "" -#: templates/js/translated/part.js:211 +#: templates/js/translated/part.js:214 msgid "Add Supplier Data" msgstr "" -#: templates/js/translated/part.js:212 +#: templates/js/translated/part.js:215 msgid "Create initial supplier data for this part" msgstr "" -#: templates/js/translated/part.js:268 +#: templates/js/translated/part.js:271 msgid "Copy Image" msgstr "" -#: templates/js/translated/part.js:269 +#: templates/js/translated/part.js:272 msgid "Copy image from original part" msgstr "" -#: templates/js/translated/part.js:277 +#: templates/js/translated/part.js:280 msgid "Copy bill of materials from original part" msgstr "" -#: templates/js/translated/part.js:284 +#: templates/js/translated/part.js:287 msgid "Copy Parameters" msgstr "" -#: templates/js/translated/part.js:285 +#: templates/js/translated/part.js:288 msgid "Copy parameter data from original part" msgstr "" -#: templates/js/translated/part.js:298 +#: templates/js/translated/part.js:301 msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:313 templates/js/translated/stock.js:122 +#: templates/js/translated/part.js:316 templates/js/translated/stock.js:121 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:329 +#: templates/js/translated/part.js:332 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:342 +#: templates/js/translated/part.js:345 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:347 +#: templates/js/translated/part.js:350 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:359 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:360 +#: templates/js/translated/part.js:363 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:368 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:394 +#: templates/js/translated/part.js:397 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:396 +#: templates/js/translated/part.js:399 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:407 +#: templates/js/translated/part.js:410 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:459 +#: templates/js/translated/part.js:462 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:460 +#: templates/js/translated/part.js:463 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:477 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:476 +#: templates/js/translated/part.js:479 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:477 +#: templates/js/translated/part.js:480 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:478 +#: templates/js/translated/part.js:481 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:485 +#: templates/js/translated/part.js:488 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:521 +#: templates/js/translated/part.js:524 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:523 +#: templates/js/translated/part.js:526 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:531 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:530 +#: templates/js/translated/part.js:533 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:547 +#: templates/js/translated/part.js:550 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:560 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:560 +#: templates/js/translated/part.js:563 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:585 +#: templates/js/translated/part.js:588 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1547 +#: templates/js/translated/part.js:612 templates/js/translated/part.js:1825 #: templates/js/translated/table_filters.js:488 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:622 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:653 templates/js/translated/part.js:739 +#: templates/js/translated/part.js:656 templates/js/translated/part.js:1010 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:657 templates/js/translated/part.js:743 +#: templates/js/translated/part.js:660 templates/js/translated/part.js:1014 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:669 +#: templates/js/translated/part.js:672 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:673 +#: templates/js/translated/part.js:676 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:815 +#: templates/js/translated/part.js:761 +msgid "Stock item has not been checked recently" +msgstr "" + +#: templates/js/translated/part.js:769 +msgid "Update item" +msgstr "" + +#: templates/js/translated/part.js:770 +msgid "Delete item" +msgstr "" + +#: templates/js/translated/part.js:871 +msgid "No stocktake information available" +msgstr "" + +#: templates/js/translated/part.js:910 templates/js/translated/part.js:933 +msgid "Edit Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:914 templates/js/translated/part.js:945 +msgid "Delete Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:1086 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1236 +#: templates/js/translated/part.js:1507 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1260 +#: templates/js/translated/part.js:1531 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1327 templates/js/translated/part.js:1648 +#: templates/js/translated/part.js:1598 templates/js/translated/part.js:1936 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1514 +#: templates/js/translated/part.js:1792 msgid "No category" msgstr "" -#: templates/js/translated/part.js:1545 +#: templates/js/translated/part.js:1823 msgid "No stock" msgstr "" -#: templates/js/translated/part.js:1569 +#: templates/js/translated/part.js:1847 msgid "Allocated to build orders" msgstr "" -#: templates/js/translated/part.js:1573 +#: templates/js/translated/part.js:1851 msgid "Allocated to sales orders" msgstr "" -#: templates/js/translated/part.js:1672 templates/js/translated/part.js:1915 -#: templates/js/translated/stock.js:2387 +#: templates/js/translated/part.js:1960 templates/js/translated/part.js:2203 +#: templates/js/translated/stock.js:2382 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1688 +#: templates/js/translated/part.js:1976 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1754 +#: templates/js/translated/part.js:2042 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1759 +#: templates/js/translated/part.js:2047 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1764 +#: templates/js/translated/part.js:2052 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1777 +#: templates/js/translated/part.js:2065 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1935 templates/js/translated/stock.js:2407 +#: templates/js/translated/part.js:2223 templates/js/translated/stock.js:2402 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2015 +#: templates/js/translated/part.js:2303 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2031 +#: templates/js/translated/part.js:2319 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2095 +#: templates/js/translated/part.js:2383 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2146 templates/js/translated/stock.js:1338 +#: templates/js/translated/part.js:2434 templates/js/translated/stock.js:1337 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2147 templates/js/translated/stock.js:1339 -#: templates/js/translated/stock.js:1599 +#: templates/js/translated/part.js:2435 templates/js/translated/stock.js:1338 +#: templates/js/translated/stock.js:1598 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2153 +#: templates/js/translated/part.js:2441 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2175 +#: templates/js/translated/part.js:2463 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2189 +#: templates/js/translated/part.js:2477 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2270 templates/js/translated/part.js:2271 +#: templates/js/translated/part.js:2558 templates/js/translated/part.js:2559 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2273 +#: templates/js/translated/part.js:2561 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:2279 +#: templates/js/translated/part.js:2567 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:2329 +#: templates/js/translated/part.js:2617 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2335 +#: templates/js/translated/part.js:2623 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:2431 +#: templates/js/translated/part.js:2719 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2447 +#: templates/js/translated/part.js:2735 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:2492 +#: templates/js/translated/part.js:2780 msgid "Minimum Stock Level" msgstr "" @@ -10293,388 +10434,388 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:74 +#: templates/js/translated/stock.js:73 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:104 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:114 +#: templates/js/translated/stock.js:113 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:148 +#: templates/js/translated/stock.js:147 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:163 +#: templates/js/translated/stock.js:162 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:177 +#: templates/js/translated/stock.js:176 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:184 +#: templates/js/translated/stock.js:183 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:193 +#: templates/js/translated/stock.js:192 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:197 +#: templates/js/translated/stock.js:196 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:201 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:256 +#: templates/js/translated/stock.js:255 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:298 +#: templates/js/translated/stock.js:297 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:304 +#: templates/js/translated/stock.js:303 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:368 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:389 +#: templates/js/translated/stock.js:388 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:405 +#: templates/js/translated/stock.js:404 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:410 +#: templates/js/translated/stock.js:409 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:431 +#: templates/js/translated/stock.js:430 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:481 +#: templates/js/translated/stock.js:480 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:494 +#: templates/js/translated/stock.js:493 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:519 +#: templates/js/translated/stock.js:518 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:523 templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:522 templates/js/translated/stock.js:523 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:540 +#: templates/js/translated/stock.js:539 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:560 +#: templates/js/translated/stock.js:559 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:568 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:692 +#: templates/js/translated/stock.js:691 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:693 +#: templates/js/translated/stock.js:692 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:770 +#: templates/js/translated/stock.js:769 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:771 +#: templates/js/translated/stock.js:770 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:773 +#: templates/js/translated/stock.js:772 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:774 +#: templates/js/translated/stock.js:773 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:863 +#: templates/js/translated/stock.js:862 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:864 +#: templates/js/translated/stock.js:863 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:958 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:959 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:966 +#: templates/js/translated/stock.js:965 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:967 +#: templates/js/translated/stock.js:966 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:971 +#: templates/js/translated/stock.js:970 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:972 +#: templates/js/translated/stock.js:971 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:976 +#: templates/js/translated/stock.js:975 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:977 users/models.py:220 +#: templates/js/translated/stock.js:976 users/models.py:221 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:981 +#: templates/js/translated/stock.js:980 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1114 +#: templates/js/translated/stock.js:1113 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1141 +#: templates/js/translated/stock.js:1140 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1277 +#: templates/js/translated/stock.js:1276 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1279 +#: templates/js/translated/stock.js:1278 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1284 +#: templates/js/translated/stock.js:1283 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1331 +#: templates/js/translated/stock.js:1330 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1334 +#: templates/js/translated/stock.js:1333 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1360 +#: templates/js/translated/stock.js:1359 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1417 +#: templates/js/translated/stock.js:1416 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1582 +#: templates/js/translated/stock.js:1581 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1604 +#: templates/js/translated/stock.js:1603 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1633 +#: templates/js/translated/stock.js:1632 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1637 +#: templates/js/translated/stock.js:1636 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1645 +#: templates/js/translated/stock.js:1644 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1651 +#: templates/js/translated/stock.js:1650 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1820 +#: templates/js/translated/stock.js:1815 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1825 +#: templates/js/translated/stock.js:1820 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1828 +#: templates/js/translated/stock.js:1823 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1831 +#: templates/js/translated/stock.js:1826 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1833 +#: templates/js/translated/stock.js:1828 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1835 +#: templates/js/translated/stock.js:1830 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1838 +#: templates/js/translated/stock.js:1833 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1837 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1844 +#: templates/js/translated/stock.js:1839 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1846 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1853 +#: templates/js/translated/stock.js:1848 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1855 +#: templates/js/translated/stock.js:1850 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1859 +#: templates/js/translated/stock.js:1854 #: templates/js/translated/table_filters.js:216 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1989 +#: templates/js/translated/stock.js:1984 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2026 +#: templates/js/translated/stock.js:2021 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2199 +#: templates/js/translated/stock.js:2194 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2213 +#: templates/js/translated/stock.js:2208 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2214 +#: templates/js/translated/stock.js:2209 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2446 +#: templates/js/translated/stock.js:2441 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2536 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2557 +#: templates/js/translated/stock.js:2552 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2579 +#: templates/js/translated/stock.js:2574 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2598 +#: templates/js/translated/stock.js:2593 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2617 +#: templates/js/translated/stock.js:2612 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2635 +#: templates/js/translated/stock.js:2630 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2658 +#: templates/js/translated/stock.js:2653 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2666 +#: templates/js/translated/stock.js:2661 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2737 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2793 templates/js/translated/stock.js:2829 +#: templates/js/translated/stock.js:2788 templates/js/translated/stock.js:2824 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2845 +#: templates/js/translated/stock.js:2840 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2866 +#: templates/js/translated/stock.js:2861 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2867 +#: templates/js/translated/stock.js:2862 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2869 +#: templates/js/translated/stock.js:2864 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2870 +#: templates/js/translated/stock.js:2865 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:2866 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2872 +#: templates/js/translated/stock.js:2867 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2885 +#: templates/js/translated/stock.js:2880 msgid "Select part to install" msgstr "" @@ -10699,7 +10840,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:92 -#: templates/js/translated/table_filters.js:516 +#: templates/js/translated/table_filters.js:520 msgid "Has Pricing" msgstr "" @@ -10915,6 +11056,10 @@ msgstr "" msgid "Purchasable" msgstr "" +#: templates/js/translated/table_filters.js:504 +msgid "Has stocktake entries" +msgstr "" + #: templates/js/translated/tables.js:70 msgid "Display calendar view" msgstr "" @@ -11209,34 +11354,34 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:207 +#: users/models.py:208 msgid "Permission set" msgstr "" -#: users/models.py:215 +#: users/models.py:216 msgid "Group" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "View" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "Permission to view items" msgstr "" -#: users/models.py:220 +#: users/models.py:221 msgid "Permission to add items" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Change" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Permissions to edit items" msgstr "" -#: users/models.py:224 +#: users/models.py:225 msgid "Permission to delete items" msgstr "" diff --git a/InvenTree/locale/ru/LC_MESSAGES/django.po b/InvenTree/locale/ru/LC_MESSAGES/django.po index e9ba39684d..c27bed1735 100644 --- a/InvenTree/locale/ru/LC_MESSAGES/django.po +++ b/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: 2022-12-30 20:46+0000\n" -"PO-Revision-Date: 2022-12-31 11:29\n" +"POT-Creation-Date: 2023-01-01 11:05+0000\n" +"PO-Revision-Date: 2023-01-01 11:26\n" "Last-Translator: \n" "Language-Team: Russian\n" "Language: ru_RU\n" @@ -34,7 +34,7 @@ msgstr "Введите дату" #: company/templates/company/sidebar.html:25 order/models.py:943 #: order/templates/order/po_sidebar.html:11 #: order/templates/order/so_sidebar.html:17 part/admin.py:27 -#: part/templates/part/part_sidebar.html:57 +#: part/models.py:2932 part/templates/part/part_sidebar.html:62 #: report/templates/report/inventree_build_order_base.html:172 #: stock/admin.py:103 stock/models.py:2061 stock/models.py:2169 #: stock/serializers.py:321 stock/serializers.py:454 stock/serializers.py:535 @@ -44,8 +44,8 @@ msgstr "Введите дату" #: templates/js/translated/company.js:1023 #: templates/js/translated/order.js:2435 templates/js/translated/order.js:2569 #: templates/js/translated/order.js:3067 templates/js/translated/order.js:4004 -#: templates/js/translated/order.js:4385 templates/js/translated/stock.js:1413 -#: templates/js/translated/stock.js:2020 +#: templates/js/translated/order.js:4385 templates/js/translated/part.js:882 +#: templates/js/translated/stock.js:1412 templates/js/translated/stock.js:2015 msgid "Notes" msgstr "Заметки" @@ -204,18 +204,18 @@ msgstr "Вложения" msgid "Select file to attach" msgstr "Выберите файл для вложения" -#: InvenTree/models.py:412 common/models.py:2366 company/models.py:129 +#: InvenTree/models.py:412 common/models.py:2373 company/models.py:129 #: company/models.py:281 company/models.py:516 order/models.py:85 -#: order/models.py:1282 part/admin.py:25 part/models.py:865 +#: order/models.py:1282 part/admin.py:25 part/models.py:866 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: stock/admin.py:102 templates/js/translated/company.js:692 #: templates/js/translated/company.js:1012 -#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1615 +#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1886 msgid "Link" msgstr "Ссылка" -#: InvenTree/models.py:413 build/models.py:290 part/models.py:866 +#: InvenTree/models.py:413 build/models.py:290 part/models.py:867 #: stock/models.py:716 msgid "Link to external URL" msgstr "Ссылка на внешний URL" @@ -229,12 +229,13 @@ msgstr "Комментарий" msgid "File comment" msgstr "Комментарий к файлу" -#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1810 -#: common/models.py:1811 common/models.py:2034 common/models.py:2035 -#: common/models.py:2296 common/models.py:2297 part/models.py:2948 -#: part/models.py:2968 plugin/models.py:264 plugin/models.py:265 +#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1817 +#: common/models.py:1818 common/models.py:2041 common/models.py:2042 +#: common/models.py:2303 common/models.py:2304 part/models.py:2940 +#: part/models.py:3026 part/models.py:3046 plugin/models.py:264 +#: plugin/models.py:265 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2689 +#: templates/js/translated/stock.js:2684 msgid "User" msgstr "Пользователь" @@ -271,19 +272,20 @@ msgstr "Ошибка переименования файла" msgid "Invalid choice" msgstr "Неверный выбор" -#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2020 -#: company/models.py:363 label/models.py:101 part/models.py:809 -#: part/models.py:3123 plugin/models.py:94 report/models.py:152 +#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2027 +#: company/models.py:363 label/models.py:101 part/models.py:810 +#: part/models.py:3201 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 +#: templates/InvenTree/settings/notifications.html:17 #: templates/InvenTree/settings/plugin.html:60 #: templates/InvenTree/settings/plugin.html:104 #: templates/InvenTree/settings/plugin_settings.html:23 -#: templates/InvenTree/settings/settings.html:344 +#: templates/InvenTree/settings/settings.html:345 #: templates/js/translated/company.js:581 #: templates/js/translated/company.js:794 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:711 templates/js/translated/part.js:880 -#: templates/js/translated/part.js:2010 templates/js/translated/stock.js:2434 +#: templates/js/translated/part.js:982 templates/js/translated/part.js:1151 +#: templates/js/translated/part.js:2291 templates/js/translated/stock.js:2429 msgid "Name" msgstr "Название" @@ -292,24 +294,25 @@ msgstr "Название" #: company/models.py:522 company/templates/company/company_base.html:72 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:108 label/models.py:108 -#: order/models.py:83 part/admin.py:141 part/admin.py:222 part/models.py:832 -#: part/models.py:3132 part/templates/part/category.html:75 +#: order/models.py:83 part/admin.py:174 part/admin.py:255 part/models.py:833 +#: part/models.py:3210 part/templates/part/category.html:75 #: part/templates/part/part_base.html:172 #: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/admin.py:25 stock/templates/stock/location.html:117 +#: templates/InvenTree/settings/notifications.html:19 #: templates/InvenTree/settings/plugin_settings.html:28 -#: templates/InvenTree/settings/settings.html:355 +#: templates/InvenTree/settings/settings.html:356 #: templates/js/translated/bom.js:592 templates/js/translated/bom.js:895 #: templates/js/translated/build.js:2596 templates/js/translated/company.js:445 #: templates/js/translated/company.js:703 #: templates/js/translated/company.js:987 templates/js/translated/order.js:2030 #: templates/js/translated/order.js:2267 templates/js/translated/order.js:2845 -#: templates/js/translated/part.js:773 templates/js/translated/part.js:1223 -#: templates/js/translated/part.js:1497 templates/js/translated/part.js:2046 -#: templates/js/translated/part.js:2121 templates/js/translated/stock.js:1787 -#: templates/js/translated/stock.js:2466 templates/js/translated/stock.js:2526 +#: templates/js/translated/part.js:1044 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1768 templates/js/translated/part.js:2327 +#: templates/js/translated/part.js:2402 templates/js/translated/stock.js:1782 +#: templates/js/translated/stock.js:2461 templates/js/translated/stock.js:2521 msgid "Description" msgstr "Описание" @@ -322,7 +325,7 @@ msgid "parent" msgstr "родитель" #: InvenTree/models.py:580 InvenTree/models.py:581 -#: templates/js/translated/part.js:2055 templates/js/translated/stock.js:2475 +#: templates/js/translated/part.js:2336 templates/js/translated/stock.js:2470 msgid "Path" msgstr "Путь" @@ -354,7 +357,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:58 part/models.py:3468 +#: InvenTree/serializers.py:58 part/models.py:3546 msgid "Must be a valid number" msgstr "Должно быть действительным номером" @@ -421,107 +424,107 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:639 +#: InvenTree/settings.py:642 msgid "Czech" msgstr "" -#: InvenTree/settings.py:640 +#: InvenTree/settings.py:643 msgid "Danish" msgstr "" -#: InvenTree/settings.py:641 +#: InvenTree/settings.py:644 msgid "German" msgstr "Немецкий" -#: InvenTree/settings.py:642 +#: InvenTree/settings.py:645 msgid "Greek" msgstr "Греческий" -#: InvenTree/settings.py:643 +#: InvenTree/settings.py:646 msgid "English" msgstr "Английский" -#: InvenTree/settings.py:644 +#: InvenTree/settings.py:647 msgid "Spanish" msgstr "Испанский" -#: InvenTree/settings.py:645 +#: InvenTree/settings.py:648 msgid "Spanish (Mexican)" msgstr "Испанский (Мексика)" -#: InvenTree/settings.py:646 +#: InvenTree/settings.py:649 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:647 +#: InvenTree/settings.py:650 msgid "French" msgstr "Французский" -#: InvenTree/settings.py:648 +#: InvenTree/settings.py:651 msgid "Hebrew" msgstr "Иврит" -#: InvenTree/settings.py:649 +#: InvenTree/settings.py:652 msgid "Hungarian" msgstr "Венгерский" -#: InvenTree/settings.py:650 +#: InvenTree/settings.py:653 msgid "Italian" msgstr "Итальянский" -#: InvenTree/settings.py:651 +#: InvenTree/settings.py:654 msgid "Japanese" msgstr "Японский" -#: InvenTree/settings.py:652 +#: InvenTree/settings.py:655 msgid "Korean" msgstr "Корейский" -#: InvenTree/settings.py:653 +#: InvenTree/settings.py:656 msgid "Dutch" msgstr "Голландский" -#: InvenTree/settings.py:654 +#: InvenTree/settings.py:657 msgid "Norwegian" msgstr "Норвежский" -#: InvenTree/settings.py:655 +#: InvenTree/settings.py:658 msgid "Polish" msgstr "Польский" -#: InvenTree/settings.py:656 +#: InvenTree/settings.py:659 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:657 +#: InvenTree/settings.py:660 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:658 +#: InvenTree/settings.py:661 msgid "Russian" msgstr "Русский" -#: InvenTree/settings.py:659 +#: InvenTree/settings.py:662 msgid "Slovenian" msgstr "" -#: InvenTree/settings.py:660 +#: InvenTree/settings.py:663 msgid "Swedish" msgstr "Шведский" -#: InvenTree/settings.py:661 +#: InvenTree/settings.py:664 msgid "Thai" msgstr "Тайский" -#: InvenTree/settings.py:662 +#: InvenTree/settings.py:665 msgid "Turkish" msgstr "Турецкий" -#: InvenTree/settings.py:663 +#: InvenTree/settings.py:666 msgid "Vietnamese" msgstr "Вьетнамский" -#: InvenTree/settings.py:664 +#: InvenTree/settings.py:667 msgid "Chinese" msgstr "Китайский" @@ -652,7 +655,7 @@ msgstr "Отделить от родительского элемента" msgid "Split child item" msgstr "Разбить дочерний элемент" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2124 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2119 msgid "Merged stock items" msgstr "Объединенные позиции на складе" @@ -756,7 +759,7 @@ msgstr "Порядок сборки" #: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:141 -#: templates/InvenTree/settings/sidebar.html:47 +#: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:254 users/models.py:41 msgid "Build Orders" msgstr "Порядок сборки" @@ -766,8 +769,9 @@ msgid "Build Order Reference" msgstr "Ссылка на заказ" #: build/models.py:155 order/models.py:241 order/models.py:651 -#: order/models.py:941 part/admin.py:224 part/models.py:3378 +#: order/models.py:941 part/admin.py:257 part/models.py:3456 #: part/templates/part/upload_bom.html:54 +#: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 #: templates/js/translated/bom.js:729 templates/js/translated/bom.js:905 @@ -793,13 +797,15 @@ msgstr "" #: build/models.py:180 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:684 #: order/models.py:1038 order/models.py:1149 order/models.py:1150 -#: part/models.py:381 part/models.py:2781 part/models.py:2894 -#: part/models.py:2909 part/models.py:2928 part/models.py:2946 -#: part/models.py:3045 part/models.py:3166 part/models.py:3258 -#: part/models.py:3343 part/models.py:3659 part/serializers.py:853 -#: part/templates/part/part_app_base.html:8 +#: part/models.py:382 part/models.py:2799 part/models.py:2912 +#: part/models.py:2972 part/models.py:2987 part/models.py:3006 +#: part/models.py:3024 part/models.py:3123 part/models.py:3244 +#: part/models.py:3336 part/models.py:3421 part/models.py:3737 +#: part/serializers.py:894 part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 +#: report/templates/report/inventree_bill_of_materials_report.html:110 +#: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_base.html:109 #: report/templates/report/inventree_po_report.html:89 #: report/templates/report/inventree_so_report.html:90 stock/serializers.py:90 @@ -819,12 +825,12 @@ msgstr "" #: templates/js/translated/order.js:1172 templates/js/translated/order.js:1676 #: templates/js/translated/order.js:2252 templates/js/translated/order.js:3199 #: templates/js/translated/order.js:3595 templates/js/translated/order.js:3825 -#: templates/js/translated/part.js:1208 templates/js/translated/part.js:1280 -#: templates/js/translated/part.js:1474 templates/js/translated/pricing.js:102 -#: templates/js/translated/stock.js:618 templates/js/translated/stock.js:783 -#: templates/js/translated/stock.js:993 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2552 templates/js/translated/stock.js:2747 -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/part.js:1479 templates/js/translated/part.js:1551 +#: templates/js/translated/part.js:1745 templates/js/translated/pricing.js:102 +#: templates/js/translated/stock.js:617 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:992 templates/js/translated/stock.js:1738 +#: templates/js/translated/stock.js:2547 templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2879 msgid "Part" msgstr "Детали" @@ -890,7 +896,7 @@ msgstr "Код партии" msgid "Batch code for this build output" msgstr "Код партии для этого вывода сборки" -#: build/models.py:252 order/models.py:87 part/models.py:1001 +#: build/models.py:252 order/models.py:87 part/models.py:1002 #: part/templates/part/part_base.html:318 templates/js/translated/order.js:2858 msgid "Creation Date" msgstr "Дата создания" @@ -923,7 +929,7 @@ msgstr "Пользователь, выпустивший этот заказ н #: build/models.py:283 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:101 #: order/templates/order/order_base.html:185 -#: order/templates/order/sales_order_base.html:183 part/models.py:1005 +#: order/templates/order/sales_order_base.html:183 part/models.py:1006 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2658 templates/js/translated/order.js:2064 msgid "Responsible" @@ -936,7 +942,7 @@ msgstr "Пользователь, ответственный за этот за #: build/models.py:289 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:188 -#: part/templates/part/part_base.html:376 stock/models.py:714 +#: part/templates/part/part_base.html:390 stock/models.py:714 #: stock/templates/stock/item_base.html:203 msgid "External Link" msgstr "Внешняя ссылка" @@ -1011,8 +1017,8 @@ msgstr "" #: templates/js/translated/order.js:107 templates/js/translated/order.js:3200 #: templates/js/translated/order.js:3502 templates/js/translated/order.js:3507 #: templates/js/translated/order.js:3602 templates/js/translated/order.js:3694 -#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 -#: templates/js/translated/stock.js:2625 +#: templates/js/translated/part.js:803 templates/js/translated/stock.js:618 +#: templates/js/translated/stock.js:783 templates/js/translated/stock.js:2620 msgid "Stock Item" msgstr "Предметы на складе" @@ -1022,12 +1028,13 @@ msgstr "Исходный складской предмет" #: build/models.py:1364 build/serializers.py:192 #: build/templates/build/build_base.html:85 -#: build/templates/build/detail.html:34 common/models.py:1842 +#: build/templates/build/detail.html:34 common/models.py:1849 #: order/models.py:934 order/models.py:1460 order/serializers.py:1206 -#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:223 -#: part/forms.py:40 part/models.py:3359 +#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:256 +#: part/forms.py:40 part/models.py:2919 part/models.py:3437 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 +#: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_base.html:113 #: report/templates/report/inventree_po_report.html:90 #: report/templates/report/inventree_so_report.html:91 @@ -1049,13 +1056,14 @@ msgstr "Исходный складской предмет" #: templates/js/translated/order.js:3201 templates/js/translated/order.js:3521 #: templates/js/translated/order.js:3608 templates/js/translated/order.js:3700 #: templates/js/translated/order.js:3847 templates/js/translated/order.js:4338 -#: templates/js/translated/part.js:1078 templates/js/translated/part.js:2568 +#: templates/js/translated/part.js:805 templates/js/translated/part.js:876 +#: templates/js/translated/part.js:1349 templates/js/translated/part.js:2849 #: templates/js/translated/pricing.js:114 #: templates/js/translated/pricing.js:207 #: templates/js/translated/pricing.js:255 -#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:490 -#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:814 -#: templates/js/translated/stock.js:2674 templates/js/translated/stock.js:2759 +#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:489 +#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:813 +#: templates/js/translated/stock.js:2669 templates/js/translated/stock.js:2754 msgid "Quantity" msgstr "Количество" @@ -1097,8 +1105,8 @@ msgid "Enter quantity for build output" msgstr "Введите количество для вывода сборки" #: build/serializers.py:207 build/serializers.py:683 order/models.py:327 -#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:645 -#: part/serializers.py:1016 stock/models.py:574 stock/models.py:1312 +#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:686 +#: part/serializers.py:1057 stock/models.py:574 stock/models.py:1312 #: stock/serializers.py:294 msgid "Quantity must be greater than zero" msgstr "Количество должно быть больше нуля" @@ -1113,7 +1121,7 @@ msgstr "" #: build/serializers.py:231 order/serializers.py:463 order/serializers.py:1210 #: stock/serializers.py:303 templates/js/translated/order.js:1545 -#: templates/js/translated/stock.js:303 templates/js/translated/stock.js:491 +#: templates/js/translated/stock.js:302 templates/js/translated/stock.js:490 msgid "Serial Numbers" msgstr "Серийные номера" @@ -1146,9 +1154,10 @@ msgstr "" #: templates/js/translated/build.js:1759 templates/js/translated/order.js:1572 #: templates/js/translated/order.js:3514 templates/js/translated/order.js:3619 #: templates/js/translated/order.js:3627 templates/js/translated/order.js:3708 -#: templates/js/translated/part.js:183 templates/js/translated/stock.js:620 -#: templates/js/translated/stock.js:785 templates/js/translated/stock.js:995 -#: templates/js/translated/stock.js:1895 templates/js/translated/stock.js:2566 +#: templates/js/translated/part.js:186 templates/js/translated/part.js:804 +#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 +#: templates/js/translated/stock.js:994 templates/js/translated/stock.js:1890 +#: templates/js/translated/stock.js:2561 msgid "Location" msgstr "Расположение" @@ -1162,8 +1171,8 @@ msgstr "" #: stock/templates/stock/item_base.html:421 #: templates/js/translated/barcode.js:237 templates/js/translated/build.js:2630 #: templates/js/translated/order.js:1681 templates/js/translated/order.js:2034 -#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1870 -#: templates/js/translated/stock.js:2643 templates/js/translated/stock.js:2775 +#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:2638 templates/js/translated/stock.js:2770 msgid "Status" msgstr "Статус" @@ -1239,8 +1248,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:595 build/serializers.py:640 part/models.py:3495 -#: part/models.py:3651 +#: build/serializers.py:595 build/serializers.py:640 part/models.py:3573 +#: part/models.py:3729 msgid "BOM Item" msgstr "BOM Компонент" @@ -1406,7 +1415,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2670 templates/js/translated/order.js:2051 #: templates/js/translated/order.js:2382 templates/js/translated/order.js:2866 -#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1093 +#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1364 msgid "Target Date" msgstr "Целевая дата" @@ -1484,8 +1493,8 @@ msgstr "" #: stock/templates/stock/item_base.html:168 #: templates/js/translated/build.js:1250 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:1884 -#: templates/js/translated/stock.js:2782 +#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:1879 +#: templates/js/translated/stock.js:2777 #: templates/js/translated/table_filters.js:179 #: templates/js/translated/table_filters.js:270 msgid "Batch" @@ -1617,8 +1626,8 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:86 #: order/templates/order/sales_order_detail.html:140 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:210 -#: part/templates/part/part_sidebar.html:55 stock/templates/stock/item.html:117 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:233 +#: part/templates/part/part_sidebar.html:60 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" msgstr "Приложения" @@ -1635,7 +1644,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:316 +#: build/templates/build/index.html:18 part/templates/part/detail.html:339 msgid "New Build Order" msgstr "Новый заказ на сборку" @@ -1928,9 +1937,9 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1014 part/admin.py:41 part/models.py:3168 +#: common/models.py:1014 part/admin.py:41 part/models.py:3246 #: report/models.py:158 templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:504 +#: templates/js/translated/table_filters.js:508 msgid "Template" msgstr "Шаблон" @@ -1938,7 +1947,7 @@ msgstr "Шаблон" msgid "Parts are templates by default" msgstr "По умолчанию детали являются шаблонами" -#: common/models.py:1021 part/admin.py:37 part/admin.py:229 part/models.py:957 +#: common/models.py:1021 part/admin.py:37 part/admin.py:262 part/models.py:958 #: templates/js/translated/bom.js:1595 #: templates/js/translated/table_filters.js:196 #: templates/js/translated/table_filters.js:467 @@ -1949,7 +1958,7 @@ msgstr "Сборка" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1028 part/admin.py:38 part/models.py:963 +#: common/models.py:1028 part/admin.py:38 part/models.py:964 #: templates/js/translated/table_filters.js:475 msgid "Component" msgstr "Компонент" @@ -1958,7 +1967,7 @@ msgstr "Компонент" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1035 part/admin.py:39 part/models.py:974 +#: common/models.py:1035 part/admin.py:39 part/models.py:975 msgid "Purchaseable" msgstr "" @@ -1966,7 +1975,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1042 part/admin.py:40 part/models.py:979 +#: common/models.py:1042 part/admin.py:40 part/models.py:980 #: templates/js/translated/table_filters.js:496 msgid "Salable" msgstr "Можно продавать" @@ -1975,10 +1984,10 @@ msgstr "Можно продавать" msgid "Parts are salable by default" msgstr "" -#: common/models.py:1049 part/admin.py:42 part/models.py:969 +#: common/models.py:1049 part/admin.py:42 part/models.py:970 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:120 -#: templates/js/translated/table_filters.js:508 +#: templates/js/translated/table_filters.js:512 msgid "Trackable" msgstr "Отслеживание" @@ -1986,10 +1995,10 @@ msgstr "Отслеживание" msgid "Parts are trackable by default" msgstr "По умолчанию детали являются отслеживаемыми" -#: common/models.py:1056 part/admin.py:43 part/models.py:989 +#: common/models.py:1056 part/admin.py:43 part/models.py:990 #: part/templates/part/part_base.html:156 #: templates/js/translated/table_filters.js:42 -#: templates/js/translated/table_filters.js:512 +#: templates/js/translated/table_filters.js:516 msgid "Virtual" msgstr "" @@ -2417,7 +2426,7 @@ msgstr "" msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1461 common/models.py:1803 +#: common/models.py:1461 common/models.py:1810 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -2749,41 +2758,50 @@ msgstr "" msgid "Display part scheduling information" msgstr "" -#: common/models.py:1778 -msgid "Table String Length" +#: common/models.py:1778 part/templates/part/detail.html:61 +#: templates/js/translated/part.js:822 +msgid "Part Stocktake" msgstr "" #: common/models.py:1779 +msgid "Display part stocktake information" +msgstr "" + +#: common/models.py:1785 +msgid "Table String Length" +msgstr "" + +#: common/models.py:1786 msgid "Maximimum length limit for strings displayed in table views" msgstr "" -#: common/models.py:1843 +#: common/models.py:1850 msgid "Price break quantity" msgstr "" -#: common/models.py:1850 company/serializers.py:393 order/models.py:975 -#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1145 +#: common/models.py:1857 company/serializers.py:393 order/models.py:975 +#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1416 #: templates/js/translated/pricing.js:354 msgid "Price" msgstr "Цена" -#: common/models.py:1851 +#: common/models.py:1858 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2011 common/models.py:2189 +#: common/models.py:2018 common/models.py:2196 msgid "Endpoint" msgstr "" -#: common/models.py:2012 +#: common/models.py:2019 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2021 +#: common/models.py:2028 msgid "Name for this webhook" msgstr "" -#: common/models.py:2026 part/admin.py:36 part/models.py:984 +#: common/models.py:2033 part/admin.py:36 part/models.py:985 #: plugin/models.py:100 templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:116 #: templates/js/translated/table_filters.js:336 @@ -2791,131 +2809,133 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:2027 +#: common/models.py:2034 msgid "Is this webhook active" msgstr "" -#: common/models.py:2041 +#: common/models.py:2048 msgid "Token" msgstr "" -#: common/models.py:2042 +#: common/models.py:2049 msgid "Token for access" msgstr "" -#: common/models.py:2049 +#: common/models.py:2056 msgid "Secret" msgstr "" -#: common/models.py:2050 +#: common/models.py:2057 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2156 +#: common/models.py:2163 msgid "Message ID" msgstr "" -#: common/models.py:2157 +#: common/models.py:2164 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2165 +#: common/models.py:2172 msgid "Host" msgstr "" -#: common/models.py:2166 +#: common/models.py:2173 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2173 +#: common/models.py:2180 msgid "Header" msgstr "" -#: common/models.py:2174 +#: common/models.py:2181 msgid "Header of this message" msgstr "" -#: common/models.py:2180 +#: common/models.py:2187 msgid "Body" msgstr "" -#: common/models.py:2181 +#: common/models.py:2188 msgid "Body of this message" msgstr "" -#: common/models.py:2190 +#: common/models.py:2197 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2195 +#: common/models.py:2202 msgid "Worked on" msgstr "" -#: common/models.py:2196 +#: common/models.py:2203 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2355 +#: common/models.py:2362 msgid "Id" msgstr "" -#: common/models.py:2361 templates/js/translated/news.js:35 +#: common/models.py:2368 templates/js/translated/news.js:35 msgid "Title" msgstr "" -#: common/models.py:2371 templates/js/translated/news.js:51 +#: common/models.py:2378 templates/js/translated/news.js:51 msgid "Published" msgstr "" -#: common/models.py:2376 templates/InvenTree/settings/plugin.html:62 +#: common/models.py:2383 templates/InvenTree/settings/plugin.html:62 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/news.js:47 msgid "Author" msgstr "" -#: common/models.py:2381 templates/js/translated/news.js:43 +#: common/models.py:2388 templates/js/translated/news.js:43 msgid "Summary" msgstr "" -#: common/models.py:2386 +#: common/models.py:2393 msgid "Read" msgstr "" -#: common/models.py:2387 +#: common/models.py:2394 msgid "Was this news item read?" msgstr "" -#: common/notifications.py:293 +#: common/notifications.py:294 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:295 +#: common/notifications.py:296 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:301 +#: common/notifications.py:302 msgid "Items Received" msgstr "" -#: common/notifications.py:303 +#: common/notifications.py:304 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:415 +#: common/notifications.py:416 msgid "Error raised by plugin" msgstr "" #: common/views.py:85 order/templates/order/order_wizard/po_upload.html:51 #: order/templates/order/purchase_order_detail.html:25 order/views.py:102 -#: part/views.py:107 templates/patterns/wizard/upload.html:37 +#: part/templates/part/import_wizard/part_upload.html:58 part/views.py:109 +#: templates/patterns/wizard/upload.html:37 msgid "Upload File" msgstr "Загрузить файл" #: common/views.py:86 order/templates/order/order_wizard/match_fields.html:52 #: order/views.py:103 #: part/templates/part/import_wizard/ajax_match_fields.html:45 -#: part/views.py:108 templates/patterns/wizard/match_fields.html:51 +#: part/templates/part/import_wizard/match_fields.html:52 part/views.py:110 +#: templates/patterns/wizard/match_fields.html:51 msgid "Match Fields" msgstr "" @@ -2934,7 +2954,9 @@ msgstr "Детали импортированы" #: common/views.py:509 order/templates/order/order_wizard/match_fields.html:27 #: order/templates/order/order_wizard/match_parts.html:19 #: order/templates/order/order_wizard/po_upload.html:49 +#: part/templates/part/import_wizard/match_fields.html:27 #: part/templates/part/import_wizard/match_references.html:19 +#: part/templates/part/import_wizard/part_upload.html:56 #: templates/patterns/wizard/match_fields.html:26 #: templates/patterns/wizard/upload.html:35 msgid "Previous Step" @@ -2995,7 +3017,7 @@ msgstr "Контактное лицо" msgid "Link to external company information" msgstr "Ссылка на описание компании" -#: company/models.py:140 part/models.py:878 +#: company/models.py:140 part/models.py:879 msgid "Image" msgstr "Изображение" @@ -3028,8 +3050,8 @@ msgid "Does this company manufacture parts?" msgstr "Является ли компания производителем деталей?" #: company/models.py:153 company/serializers.py:399 -#: company/templates/company/company_base.html:107 part/models.py:2762 -#: part/serializers.py:154 part/serializers.py:182 stock/serializers.py:182 +#: company/templates/company/company_base.html:107 part/models.py:2780 +#: part/serializers.py:156 part/serializers.py:184 stock/serializers.py:182 #: templates/InvenTree/settings/pricing.html:64 msgid "Currency" msgstr "Валюта" @@ -3055,12 +3077,12 @@ msgstr "Выберите деталь" #: templates/js/translated/company.js:433 #: templates/js/translated/company.js:534 #: templates/js/translated/company.js:669 -#: templates/js/translated/company.js:957 templates/js/translated/part.js:238 +#: templates/js/translated/company.js:957 templates/js/translated/part.js:241 #: templates/js/translated/table_filters.js:439 msgid "Manufacturer" msgstr "Производитель" -#: company/models.py:269 templates/js/translated/part.js:239 +#: company/models.py:269 templates/js/translated/part.js:242 msgid "Select manufacturer" msgstr "Выберите производителя" @@ -3070,11 +3092,11 @@ msgstr "Выберите производителя" #: templates/js/translated/company.js:533 #: templates/js/translated/company.js:685 #: templates/js/translated/company.js:976 templates/js/translated/order.js:2286 -#: templates/js/translated/part.js:249 templates/js/translated/part.js:1067 +#: templates/js/translated/part.js:252 templates/js/translated/part.js:1338 msgid "MPN" msgstr "" -#: company/models.py:276 templates/js/translated/part.js:250 +#: company/models.py:276 templates/js/translated/part.js:253 msgid "Manufacturer Part Number" msgstr "Код производителя" @@ -3100,8 +3122,8 @@ msgstr "Наименование параметра" #: company/models.py:370 #: report/templates/report/inventree_test_report_base.html:95 #: stock/models.py:2156 templates/js/translated/company.js:582 -#: templates/js/translated/company.js:800 templates/js/translated/part.js:889 -#: templates/js/translated/stock.js:1399 +#: templates/js/translated/company.js:800 templates/js/translated/part.js:1160 +#: templates/js/translated/stock.js:1398 msgid "Value" msgstr "Значение" @@ -3109,10 +3131,10 @@ msgstr "Значение" msgid "Parameter value" msgstr "Значение параметра" -#: company/models.py:377 part/admin.py:26 part/models.py:951 -#: part/models.py:3128 part/templates/part/part_base.html:286 -#: templates/InvenTree/settings/settings.html:349 -#: templates/js/translated/company.js:806 templates/js/translated/part.js:895 +#: company/models.py:377 part/admin.py:26 part/models.py:952 +#: part/models.py:3206 part/templates/part/part_base.html:286 +#: templates/InvenTree/settings/settings.html:350 +#: templates/js/translated/company.js:806 templates/js/translated/part.js:1166 msgid "Units" msgstr "Ед.изм" @@ -3132,24 +3154,24 @@ msgstr "" #: templates/js/translated/company.js:304 #: templates/js/translated/company.js:437 #: templates/js/translated/company.js:930 templates/js/translated/order.js:2017 -#: templates/js/translated/part.js:219 templates/js/translated/part.js:1035 +#: templates/js/translated/part.js:222 templates/js/translated/part.js:1306 #: templates/js/translated/pricing.js:231 #: templates/js/translated/table_filters.js:443 msgid "Supplier" msgstr "Поставщик" -#: company/models.py:498 templates/js/translated/part.js:220 +#: company/models.py:498 templates/js/translated/part.js:223 msgid "Select supplier" msgstr "Выберите поставщика" #: company/models.py:503 company/templates/company/supplier_part.html:146 #: part/bom.py:253 part/bom.py:281 templates/js/translated/company.js:303 -#: templates/js/translated/order.js:2273 templates/js/translated/part.js:230 -#: templates/js/translated/part.js:1053 templates/js/translated/pricing.js:243 +#: templates/js/translated/order.js:2273 templates/js/translated/part.js:233 +#: templates/js/translated/part.js:1324 templates/js/translated/pricing.js:243 msgid "SKU" msgstr "" -#: company/models.py:504 templates/js/translated/part.js:231 +#: company/models.py:504 templates/js/translated/part.js:234 msgid "Supplier stock keeping unit" msgstr "Код поставщика" @@ -3166,24 +3188,25 @@ msgid "Supplier part description" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:181 -#: part/admin.py:225 part/models.py:3381 part/templates/part/upload_bom.html:59 +#: part/admin.py:258 part/models.py:3459 part/templates/part/upload_bom.html:59 +#: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:397 msgid "Note" msgstr "Заметка" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "base cost" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:534 company/templates/company/supplier_part.html:167 #: stock/admin.py:101 stock/models.py:682 #: stock/templates/stock/item_base.html:243 -#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2016 +#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2011 msgid "Packaging" msgstr "Упаковка" @@ -3196,7 +3219,7 @@ msgstr "" #: templates/js/translated/company.js:997 templates/js/translated/order.js:826 #: templates/js/translated/order.js:1253 templates/js/translated/order.js:1508 #: templates/js/translated/order.js:2317 templates/js/translated/order.js:2334 -#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1137 +#: templates/js/translated/part.js:1356 templates/js/translated/part.js:1408 msgid "Pack Quantity" msgstr "" @@ -3204,7 +3227,7 @@ msgstr "" msgid "Unit quantity supplied in a single pack" msgstr "" -#: company/models.py:544 part/models.py:1863 +#: company/models.py:544 part/models.py:1869 msgid "multiple" msgstr "" @@ -3216,8 +3239,8 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:1118 templates/js/translated/build.js:1883 -#: templates/js/translated/build.js:2770 templates/js/translated/part.js:623 -#: templates/js/translated/part.js:626 +#: templates/js/translated/build.js:2770 templates/js/translated/part.js:626 +#: templates/js/translated/part.js:629 #: templates/js/translated/table_filters.js:206 msgid "Available" msgstr "" @@ -3300,7 +3323,7 @@ msgstr "" #: stock/templates/stock/item_base.html:399 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:429 templates/js/translated/order.js:2827 -#: templates/js/translated/stock.js:2607 +#: templates/js/translated/stock.js:2602 #: templates/js/translated/table_filters.js:447 msgid "Customer" msgstr "Покупатель" @@ -3314,7 +3337,7 @@ msgid "Phone" msgstr "Телефон" #: company/templates/company/company_base.html:206 -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:525 msgid "Remove Image" msgstr "" @@ -3323,19 +3346,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:209 -#: part/templates/part/part_base.html:514 +#: part/templates/part/part_base.html:528 #: templates/InvenTree/settings/user.html:87 #: templates/InvenTree/settings/user.html:149 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:238 -#: part/templates/part/part_base.html:543 +#: part/templates/part/part_base.html:557 msgid "Upload Image" msgstr "Загрузить изображение" #: company/templates/company/company_base.html:253 -#: part/templates/part/part_base.html:598 +#: part/templates/part/part_base.html:612 msgid "Download Image" msgstr "Скачать изображение" @@ -3351,7 +3374,7 @@ msgstr "Создать новую деталь поставщика" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:357 +#: part/templates/part/detail.html:380 msgid "New Supplier Part" msgstr "Новая деталь поставщика" @@ -3380,7 +3403,7 @@ msgstr "Детали производителей" msgid "Create new manufacturer part" msgstr "Создать новую деталь производителя" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:387 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:410 msgid "New Manufacturer Part" msgstr "Новая деталь производителя" @@ -3394,9 +3417,9 @@ msgstr "Склад поставщика" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:35 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:35 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:200 -#: templates/InvenTree/settings/sidebar.html:49 +#: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:293 templates/navbar.html:50 #: users/models.py:42 msgid "Purchase Orders" @@ -3417,9 +3440,9 @@ msgstr "Новый заказ на закупку" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:39 +#: part/templates/part/detail.html:130 part/templates/part/part_sidebar.html:39 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:220 -#: templates/InvenTree/settings/sidebar.html:51 +#: templates/InvenTree/settings/sidebar.html:53 #: templates/js/translated/search.js:317 templates/navbar.html:61 #: users/models.py:43 msgid "Sales Orders" @@ -3451,7 +3474,7 @@ msgstr "Производители" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:221 -#: part/templates/part/detail.html:87 part/templates/part/part_base.html:85 +#: part/templates/part/detail.html:110 part/templates/part/part_base.html:85 msgid "Order part" msgstr "" @@ -3482,28 +3505,28 @@ msgid "Suppliers" msgstr "Поставщики" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:368 +#: part/templates/part/detail.html:391 msgid "Delete supplier parts" msgstr "Удалить деталь поставщика" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:369 part/templates/part/detail.html:399 -#: templates/js/translated/forms.js:455 templates/js/translated/helpers.js:38 -#: templates/js/translated/part.js:351 templates/js/translated/stock.js:188 -#: users/models.py:224 +#: part/templates/part/detail.html:392 part/templates/part/detail.html:422 +#: templates/js/translated/forms.js:458 templates/js/translated/helpers.js:38 +#: templates/js/translated/part.js:354 templates/js/translated/stock.js:187 +#: users/models.py:225 msgid "Delete" msgstr "Удалить" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:184 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:207 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "Параметры" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:189 +#: part/templates/part/detail.html:212 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:62 msgid "New Parameter" @@ -3514,7 +3537,7 @@ msgid "Delete parameters" msgstr "Удалить параметры" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:825 +#: part/templates/part/detail.html:865 msgid "Add Parameter" msgstr "Добавить параметр" @@ -3538,7 +3561,7 @@ msgstr "" #: company/templates/company/supplier_part.html:24 stock/models.py:665 #: stock/templates/stock/item_base.html:236 #: templates/js/translated/company.js:946 templates/js/translated/order.js:1173 -#: templates/js/translated/stock.js:1974 +#: templates/js/translated/stock.js:1969 msgid "Supplier Part" msgstr "Деталь поставщика" @@ -3578,7 +3601,7 @@ msgstr "" #: company/templates/company/supplier_part.html:56 #: company/templates/company/supplier_part.html:57 #: company/templates/company/supplier_part.html:222 -#: part/templates/part/detail.html:88 +#: part/templates/part/detail.html:111 msgid "Order Part" msgstr "" @@ -3630,7 +3653,7 @@ msgstr "Создать единицу хранения" #: company/templates/company/supplier_part.html:204 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:198 -#: templates/js/translated/stock.js:467 +#: templates/js/translated/stock.js:466 msgid "New Stock Item" msgstr "Новая единица хранения" @@ -3662,10 +3685,10 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 -#: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/part.js:777 templates/js/translated/part.js:1378 -#: templates/js/translated/part.js:1534 templates/js/translated/stock.js:994 -#: templates/js/translated/stock.js:1799 templates/navbar.html:31 +#: templates/InvenTree/settings/sidebar.html:47 +#: templates/js/translated/part.js:1048 templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1805 templates/js/translated/stock.js:993 +#: templates/js/translated/stock.js:1794 templates/navbar.html:31 msgid "Stock" msgstr "Склад" @@ -3680,7 +3703,7 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:29 #: part/templates/part/part_sidebar.html:30 -#: templates/InvenTree/settings/sidebar.html:35 +#: templates/InvenTree/settings/sidebar.html:37 msgid "Pricing" msgstr "" @@ -3692,7 +3715,7 @@ msgstr "" #: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:155 templates/js/translated/search.js:225 -#: templates/js/translated/stock.js:2484 users/models.py:40 +#: templates/js/translated/stock.js:2479 users/models.py:40 msgid "Stock Items" msgstr "Детали на складе" @@ -3801,9 +3824,9 @@ msgstr "" #: stock/templates/stock/item_base.html:182 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:619 templates/js/translated/order.js:1174 -#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1012 -#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1954 -#: templates/js/translated/stock.js:2588 +#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1283 +#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1949 +#: templates/js/translated/stock.js:2583 msgid "Purchase Order" msgstr "Заказ на закупку" @@ -3973,7 +3996,7 @@ msgstr "" #: order/models.py:1046 order/templates/order/order_base.html:178 #: templates/js/translated/order.js:1679 templates/js/translated/order.js:2404 -#: templates/js/translated/part.js:1129 templates/js/translated/part.js:1161 +#: templates/js/translated/part.js:1400 templates/js/translated/part.js:1432 #: templates/js/translated/table_filters.js:358 msgid "Received" msgstr "" @@ -3984,7 +4007,7 @@ msgstr "" #: order/models.py:1054 stock/models.py:800 stock/serializers.py:173 #: stock/templates/stock/item_base.html:189 -#: templates/js/translated/stock.js:2005 +#: templates/js/translated/stock.js:2000 msgid "Purchase Price" msgstr "Закупочная цена" @@ -4350,18 +4373,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:9 #: part/templates/part/import_wizard/ajax_match_fields.html:9 +#: part/templates/part/import_wizard/match_fields.html:9 #: templates/patterns/wizard/match_fields.html:8 msgid "Missing selections for the following required columns" msgstr "" #: order/templates/order/order_wizard/match_fields.html:20 #: part/templates/part/import_wizard/ajax_match_fields.html:20 +#: part/templates/part/import_wizard/match_fields.html:20 #: templates/patterns/wizard/match_fields.html:19 msgid "Duplicate selections found, see below. Fix them then retry submitting." msgstr "" #: order/templates/order/order_wizard/match_fields.html:29 #: order/templates/order/order_wizard/match_parts.html:21 +#: part/templates/part/import_wizard/match_fields.html:29 #: part/templates/part/import_wizard/match_references.html:21 #: templates/patterns/wizard/match_fields.html:28 msgid "Submit Selections" @@ -4369,18 +4395,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:35 #: part/templates/part/import_wizard/ajax_match_fields.html:28 +#: part/templates/part/import_wizard/match_fields.html:35 #: templates/patterns/wizard/match_fields.html:34 msgid "File Fields" msgstr "" #: order/templates/order/order_wizard/match_fields.html:42 #: part/templates/part/import_wizard/ajax_match_fields.html:35 +#: part/templates/part/import_wizard/match_fields.html:42 #: templates/patterns/wizard/match_fields.html:41 msgid "Remove column" msgstr "" #: order/templates/order/order_wizard/match_fields.html:60 #: part/templates/part/import_wizard/ajax_match_fields.html:53 +#: part/templates/part/import_wizard/match_fields.html:60 #: templates/patterns/wizard/match_fields.html:59 msgid "Duplicate selection" msgstr "" @@ -4389,12 +4418,13 @@ msgstr "" #: order/templates/order/order_wizard/match_parts.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: 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:102 templates/js/translated/build.js:485 #: templates/js/translated/build.js:641 templates/js/translated/build.js:2088 #: templates/js/translated/order.js:1122 templates/js/translated/order.js:1624 -#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:657 -#: templates/js/translated/stock.js:825 +#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:824 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "Удалить строку" @@ -4429,6 +4459,7 @@ msgstr "" #: order/templates/order/order_wizard/po_upload.html:27 #: part/templates/part/import_wizard/ajax_part_upload.html:10 +#: part/templates/part/import_wizard/part_upload.html:26 #: templates/patterns/wizard/upload.html:13 #, python-format msgid "Step %(step)s of %(count)s" @@ -4567,12 +4598,12 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:19 part/admin.py:219 part/models.py:3262 stock/admin.py:84 +#: part/admin.py:19 part/admin.py:252 part/models.py:3340 stock/admin.py:84 #: templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "Артикул" -#: part/admin.py:20 part/admin.py:221 part/models.py:3266 stock/admin.py:85 +#: part/admin.py:20 part/admin.py:254 part/models.py:3344 stock/admin.py:85 msgid "Part Name" msgstr "Наименование детали" @@ -4580,32 +4611,32 @@ msgstr "Наименование детали" msgid "Part Description" msgstr "" -#: part/admin.py:22 part/models.py:852 part/templates/part/part_base.html:272 -#: templates/js/translated/part.js:763 templates/js/translated/part.js:1491 -#: templates/js/translated/stock.js:1765 +#: part/admin.py:22 part/models.py:853 part/templates/part/part_base.html:272 +#: templates/js/translated/part.js:1034 templates/js/translated/part.js:1762 +#: templates/js/translated/stock.js:1760 msgid "IPN" msgstr "" -#: part/admin.py:23 part/models.py:860 part/templates/part/part_base.html:279 -#: report/models.py:171 templates/js/translated/part.js:768 +#: part/admin.py:23 part/models.py:861 part/templates/part/part_base.html:279 +#: report/models.py:171 templates/js/translated/part.js:1039 msgid "Revision" msgstr "Версия" -#: part/admin.py:24 part/admin.py:145 part/models.py:838 +#: part/admin.py:24 part/admin.py:178 part/models.py:839 #: part/templates/part/category.html:87 part/templates/part/part_base.html:300 msgid "Keywords" msgstr "Ключевые слова" -#: part/admin.py:28 part/admin.py:139 +#: part/admin.py:28 part/admin.py:172 #: templates/js/translated/model_renderers.js:338 msgid "Category ID" msgstr "Код категории" -#: part/admin.py:29 part/admin.py:140 +#: part/admin.py:29 part/admin.py:173 msgid "Category Name" msgstr "" -#: part/admin.py:30 part/admin.py:144 +#: part/admin.py:30 part/admin.py:177 msgid "Default Location ID" msgstr "" @@ -4613,7 +4644,7 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:33 part/models.py:944 part/templates/part/part_base.html:206 +#: part/admin.py:33 part/models.py:945 part/templates/part/part_base.html:206 msgid "Minimum Stock" msgstr "Минимальный запас" @@ -4625,8 +4656,8 @@ msgstr "На складе" #: part/admin.py:48 part/bom.py:145 part/templates/part/part_base.html:213 #: templates/js/translated/bom.js:1156 templates/js/translated/build.js:1935 -#: templates/js/translated/part.js:613 templates/js/translated/part.js:633 -#: templates/js/translated/part.js:1381 templates/js/translated/part.js:1559 +#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 +#: templates/js/translated/part.js:1652 templates/js/translated/part.js:1830 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4642,115 +4673,115 @@ msgid "Allocated" msgstr "" #: part/admin.py:51 part/templates/part/part_base.html:244 -#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 -#: templates/js/translated/part.js:1385 templates/js/translated/part.js:1566 +#: templates/js/translated/part.js:619 templates/js/translated/part.js:639 +#: templates/js/translated/part.js:1656 templates/js/translated/part.js:1837 msgid "Building" msgstr "" -#: part/admin.py:52 part/models.py:2846 +#: part/admin.py:52 part/models.py:2864 msgid "Minimum Cost" msgstr "" -#: part/admin.py:53 part/models.py:2852 +#: part/admin.py:53 part/models.py:2870 msgid "Maximum Cost" msgstr "" -#: part/admin.py:142 part/admin.py:216 stock/admin.py:26 stock/admin.py:98 +#: part/admin.py:175 part/admin.py:249 stock/admin.py:26 stock/admin.py:98 msgid "Parent ID" msgstr "" -#: part/admin.py:143 part/admin.py:218 stock/admin.py:27 +#: part/admin.py:176 part/admin.py:251 stock/admin.py:27 msgid "Parent Name" msgstr "" -#: part/admin.py:146 part/templates/part/category.html:81 +#: part/admin.py:179 part/templates/part/category.html:81 #: part/templates/part/category.html:94 msgid "Category Path" msgstr "Путь к категории" -#: part/admin.py:149 part/models.py:382 part/templates/part/cat_link.html:3 +#: part/admin.py:182 part/models.py:383 part/templates/part/cat_link.html:3 #: part/templates/part/category.html:23 part/templates/part/category.html:134 #: part/templates/part/category.html:154 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:84 -#: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:2065 templates/js/translated/search.js:146 +#: templates/InvenTree/settings/sidebar.html:43 +#: templates/js/translated/part.js:2346 templates/js/translated/search.js:146 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "Детали" -#: part/admin.py:211 +#: part/admin.py:244 msgid "BOM Level" msgstr "" -#: part/admin.py:213 +#: part/admin.py:246 msgid "BOM Item ID" msgstr "" -#: part/admin.py:217 +#: part/admin.py:250 msgid "Parent IPN" msgstr "" -#: part/admin.py:220 part/models.py:3270 +#: part/admin.py:253 part/models.py:3348 msgid "Part IPN" msgstr "IPN" -#: part/admin.py:226 templates/js/translated/pricing.js:91 +#: part/admin.py:259 templates/js/translated/pricing.js:91 #: templates/js/translated/pricing.js:732 msgid "Minimum Price" msgstr "" -#: part/admin.py:227 templates/js/translated/pricing.js:86 +#: part/admin.py:260 templates/js/translated/pricing.js:86 #: templates/js/translated/pricing.js:740 msgid "Maximum Price" msgstr "" -#: part/api.py:536 +#: part/api.py:538 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:556 +#: part/api.py:558 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:574 +#: part/api.py:576 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:660 +#: part/api.py:662 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:818 +#: part/api.py:820 msgid "Valid" msgstr "" -#: part/api.py:819 +#: part/api.py:821 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:825 +#: part/api.py:827 msgid "This option must be selected" msgstr "" -#: part/api.py:1265 +#: part/api.py:1281 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1269 +#: part/api.py:1285 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1284 +#: part/api.py:1300 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1315 part/api.py:1319 part/api.py:1334 part/api.py:1338 +#: part/api.py:1331 part/api.py:1335 part/api.py:1350 part/api.py:1354 msgid "This field is required" msgstr "" -#: part/bom.py:142 part/models.py:116 part/models.py:887 -#: part/templates/part/category.html:109 part/templates/part/part_base.html:360 +#: part/bom.py:142 part/models.py:116 part/models.py:888 +#: part/templates/part/category.html:109 part/templates/part/part_base.html:374 msgid "Default Location" msgstr "Место хранения по умолчанию" @@ -4801,7 +4832,7 @@ msgstr "" msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:159 part/models.py:3211 part/templates/part/category.html:16 +#: part/models.py:159 part/models.py:3289 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "Категория детали" @@ -4812,423 +4843,459 @@ msgstr "Категория детали" msgid "Part Categories" msgstr "" -#: part/models.py:468 +#: part/models.py:469 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:538 part/models.py:550 +#: part/models.py:539 part/models.py:551 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:640 +#: part/models.py:641 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:771 +#: part/models.py:772 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:776 +#: part/models.py:777 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:790 +#: part/models.py:791 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:808 part/models.py:3267 +#: part/models.py:809 part/models.py:3345 msgid "Part name" msgstr "Наименование детали" -#: part/models.py:815 +#: part/models.py:816 msgid "Is Template" msgstr "Шаблон" -#: part/models.py:816 +#: part/models.py:817 msgid "Is this part a template part?" msgstr "Эта деталь является шаблоном для других деталей?" -#: part/models.py:826 +#: part/models.py:827 msgid "Is this part a variant of another part?" msgstr "Эта деталь является разновидностью другой детали?" -#: part/models.py:827 +#: part/models.py:828 msgid "Variant Of" msgstr "Разновидность" -#: part/models.py:833 +#: part/models.py:834 msgid "Part description" msgstr "Описание детали" -#: part/models.py:839 +#: part/models.py:840 msgid "Part keywords to improve visibility in search results" msgstr "Ключевые слова для улучшения видимости в результатах поиска" -#: part/models.py:846 part/models.py:2966 part/models.py:3210 +#: part/models.py:847 part/models.py:3044 part/models.py:3288 #: part/templates/part/part_base.html:263 -#: templates/InvenTree/settings/settings.html:229 +#: templates/InvenTree/settings/settings.html:230 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1513 templates/js/translated/part.js:1770 +#: templates/js/translated/part.js:1784 templates/js/translated/part.js:2051 msgid "Category" msgstr "Категория" -#: part/models.py:847 +#: part/models.py:848 msgid "Part category" msgstr "Категория" -#: part/models.py:853 +#: part/models.py:854 msgid "Internal Part Number" msgstr "Внутренний код детали" -#: part/models.py:859 +#: part/models.py:860 msgid "Part revision or version number" msgstr "Версия детали" -#: part/models.py:885 +#: part/models.py:886 msgid "Where is this item normally stored?" msgstr "Где обычно хранится эта деталь?" -#: part/models.py:930 part/templates/part/part_base.html:369 +#: part/models.py:931 part/templates/part/part_base.html:383 msgid "Default Supplier" msgstr "" -#: part/models.py:931 +#: part/models.py:932 msgid "Default supplier part" msgstr "" -#: part/models.py:938 +#: part/models.py:939 msgid "Default Expiry" msgstr "" -#: part/models.py:939 +#: part/models.py:940 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:945 +#: part/models.py:946 msgid "Minimum allowed stock level" msgstr "Минимально допустимый складской запас" -#: part/models.py:952 +#: part/models.py:953 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:958 +#: part/models.py:959 msgid "Can this part be built from other parts?" msgstr "Может ли эта деталь быть создана из других деталей?" -#: part/models.py:964 +#: part/models.py:965 msgid "Can this part be used to build other parts?" msgstr "Может ли эта деталь использоваться для создания других деталей?" -#: part/models.py:970 +#: part/models.py:971 msgid "Does this part have tracking for unique items?" msgstr "Является ли каждый экземпляр этой детали уникальным, обладающим серийным номером?" -#: part/models.py:975 +#: part/models.py:976 msgid "Can this part be purchased from external suppliers?" msgstr "Может ли эта деталь быть закуплена у внешних поставщиков?" -#: part/models.py:980 +#: part/models.py:981 msgid "Can this part be sold to customers?" msgstr "Может ли эта деталь быть продана покупателям?" -#: part/models.py:985 +#: part/models.py:986 msgid "Is this part active?" msgstr "Эта деталь актуальна?" -#: part/models.py:990 +#: part/models.py:991 msgid "Is this a virtual part, such as a software product or license?" msgstr "Эта деталь виртуальная, как программный продукт или лицензия?" -#: part/models.py:992 +#: part/models.py:993 msgid "Part notes" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "BOM checksum" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:997 +#: part/models.py:998 msgid "BOM checked by" msgstr "" -#: part/models.py:999 +#: part/models.py:1000 msgid "BOM checked date" msgstr "" -#: part/models.py:1003 +#: part/models.py:1004 msgid "Creation User" msgstr "" -#: part/models.py:1863 +#: part/models.py:1010 part/templates/part/part_base.html:345 +#: stock/templates/stock/item_base.html:445 +#: templates/js/translated/part.js:1901 +msgid "Last Stocktake" +msgstr "" + +#: part/models.py:1869 msgid "Sell multiple" msgstr "" -#: part/models.py:2763 +#: part/models.py:2781 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:2768 +#: part/models.py:2786 templates/js/translated/part.js:806 msgid "Updated" msgstr "" -#: part/models.py:2769 +#: part/models.py:2787 msgid "Timestamp of last pricing update" msgstr "" -#: part/models.py:2786 +#: part/models.py:2804 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:2787 +#: part/models.py:2805 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:2792 +#: part/models.py:2810 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:2793 +#: part/models.py:2811 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:2798 +#: part/models.py:2816 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:2799 +#: part/models.py:2817 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:2804 +#: part/models.py:2822 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:2805 +#: part/models.py:2823 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:2810 +#: part/models.py:2828 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:2811 +#: part/models.py:2829 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:2816 +#: part/models.py:2834 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:2817 +#: part/models.py:2835 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:2822 +#: part/models.py:2840 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:2823 +#: part/models.py:2841 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:2828 +#: part/models.py:2846 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:2829 +#: part/models.py:2847 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:2834 +#: part/models.py:2852 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:2835 +#: part/models.py:2853 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:2840 +#: part/models.py:2858 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:2841 +#: part/models.py:2859 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:2847 +#: part/models.py:2865 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:2853 +#: part/models.py:2871 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:2858 +#: part/models.py:2876 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:2859 +#: part/models.py:2877 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:2864 +#: part/models.py:2882 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:2865 +#: part/models.py:2883 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:2870 +#: part/models.py:2888 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:2871 +#: part/models.py:2889 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:2876 +#: part/models.py:2894 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:2877 +#: part/models.py:2895 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3013 +#: part/models.py:2913 +msgid "Part for stocktake" +msgstr "" + +#: part/models.py:2920 +msgid "Total available stock at time of stocktake" +msgstr "" + +#: part/models.py:2924 part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:63 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:2043 templates/js/translated/part.js:887 +#: templates/js/translated/pricing.js:537 +#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2511 +msgid "Date" +msgstr "" + +#: part/models.py:2925 +msgid "Date stocktake was performed" +msgstr "" + +#: part/models.py:2933 +msgid "Additional notes" +msgstr "" + +#: part/models.py:2941 +msgid "User who performed this stocktake" +msgstr "" + +#: part/models.py:3091 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3030 +#: part/models.py:3108 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:3050 templates/js/translated/part.js:2116 -#: templates/js/translated/stock.js:1379 +#: part/models.py:3128 templates/js/translated/part.js:2397 +#: templates/js/translated/stock.js:1378 msgid "Test Name" msgstr "" -#: part/models.py:3051 +#: part/models.py:3129 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3056 +#: part/models.py:3134 msgid "Test Description" msgstr "" -#: part/models.py:3057 +#: part/models.py:3135 msgid "Enter description for this test" msgstr "" -#: part/models.py:3062 templates/js/translated/part.js:2125 +#: part/models.py:3140 templates/js/translated/part.js:2406 #: templates/js/translated/table_filters.js:322 msgid "Required" msgstr "" -#: part/models.py:3063 +#: part/models.py:3141 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3068 templates/js/translated/part.js:2133 +#: part/models.py:3146 templates/js/translated/part.js:2414 msgid "Requires Value" msgstr "" -#: part/models.py:3069 +#: part/models.py:3147 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3074 templates/js/translated/part.js:2140 +#: part/models.py:3152 templates/js/translated/part.js:2421 msgid "Requires Attachment" msgstr "" -#: part/models.py:3075 +#: part/models.py:3153 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3116 +#: part/models.py:3194 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3124 +#: part/models.py:3202 msgid "Parameter Name" msgstr "" -#: part/models.py:3128 +#: part/models.py:3206 msgid "Parameter Units" msgstr "" -#: part/models.py:3133 +#: part/models.py:3211 msgid "Parameter description" msgstr "" -#: part/models.py:3166 +#: part/models.py:3244 msgid "Parent Part" msgstr "Родительская деталь" -#: part/models.py:3168 part/models.py:3216 part/models.py:3217 -#: templates/InvenTree/settings/settings.html:224 +#: part/models.py:3246 part/models.py:3294 part/models.py:3295 +#: templates/InvenTree/settings/settings.html:225 msgid "Parameter Template" msgstr "Шаблон параметра" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Data" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Parameter Value" msgstr "" -#: part/models.py:3221 templates/InvenTree/settings/settings.html:233 +#: part/models.py:3299 templates/InvenTree/settings/settings.html:234 msgid "Default Value" msgstr "" -#: part/models.py:3222 +#: part/models.py:3300 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3259 +#: part/models.py:3337 msgid "Part ID or part name" msgstr "Артикул или наименование детали" -#: part/models.py:3263 +#: part/models.py:3341 msgid "Unique part ID value" msgstr "" -#: part/models.py:3271 +#: part/models.py:3349 msgid "Part IPN value" msgstr "Значение IPN" -#: part/models.py:3274 +#: part/models.py:3352 msgid "Level" msgstr "" -#: part/models.py:3275 +#: part/models.py:3353 msgid "BOM level" msgstr "" -#: part/models.py:3344 +#: part/models.py:3422 msgid "Select parent part" msgstr "Выберите родительскую деталь" -#: part/models.py:3352 +#: part/models.py:3430 msgid "Sub part" msgstr "" -#: part/models.py:3353 +#: part/models.py:3431 msgid "Select part to be used in BOM" msgstr "Выбрать деталь для использования в BOM" -#: part/models.py:3359 +#: part/models.py:3437 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:3363 part/templates/part/upload_bom.html:58 +#: part/models.py:3441 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:933 templates/js/translated/bom.js:986 #: templates/js/translated/build.js:1868 #: templates/js/translated/table_filters.js:84 @@ -5236,189 +5303,189 @@ msgstr "" msgid "Optional" msgstr "" -#: part/models.py:3364 +#: part/models.py:3442 msgid "This BOM item is optional" msgstr "" -#: part/models.py:3369 templates/js/translated/bom.js:929 +#: part/models.py:3447 templates/js/translated/bom.js:929 #: templates/js/translated/bom.js:995 templates/js/translated/build.js:1859 #: templates/js/translated/table_filters.js:88 msgid "Consumable" msgstr "" -#: part/models.py:3370 +#: part/models.py:3448 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:3374 part/templates/part/upload_bom.html:55 +#: part/models.py:3452 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:3375 +#: part/models.py:3453 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:3378 +#: part/models.py:3456 msgid "BOM item reference" msgstr "" -#: part/models.py:3381 +#: part/models.py:3459 msgid "BOM item notes" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "Checksum" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "BOM line checksum" msgstr "" -#: part/models.py:3387 part/templates/part/upload_bom.html:57 +#: part/models.py:3465 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1012 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:108 msgid "Inherited" msgstr "" -#: part/models.py:3388 +#: part/models.py:3466 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:3393 part/templates/part/upload_bom.html:56 +#: part/models.py:3471 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1004 msgid "Allow Variants" msgstr "Разрешить разновидности" -#: part/models.py:3394 +#: part/models.py:3472 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:3480 stock/models.py:558 +#: part/models.py:3558 stock/models.py:558 msgid "Quantity must be integer value for trackable parts" msgstr "Для отслеживаемых деталей количество должно быть целым числом" -#: part/models.py:3489 part/models.py:3491 +#: part/models.py:3567 part/models.py:3569 msgid "Sub part must be specified" msgstr "" -#: part/models.py:3618 +#: part/models.py:3696 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:3639 +#: part/models.py:3717 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:3652 +#: part/models.py:3730 msgid "Parent BOM item" msgstr "" -#: part/models.py:3660 +#: part/models.py:3738 msgid "Substitute part" msgstr "" -#: part/models.py:3675 +#: part/models.py:3753 msgid "Part 1" msgstr "Часть 1" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Part 2" msgstr "Часть 2" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Select Related Part" msgstr "" -#: part/models.py:3697 +#: part/models.py:3775 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:3701 +#: part/models.py:3779 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:155 part/serializers.py:183 stock/serializers.py:183 +#: part/serializers.py:157 part/serializers.py:185 stock/serializers.py:183 msgid "Purchase currency of this stock item" msgstr "Валюта покупки этой единицы хранения" -#: part/serializers.py:543 +#: part/serializers.py:584 msgid "Update" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:585 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:854 +#: part/serializers.py:895 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:862 +#: part/serializers.py:903 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:863 +#: part/serializers.py:904 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:868 +#: part/serializers.py:909 msgid "Include Inherited" msgstr "" -#: part/serializers.py:869 +#: part/serializers.py:910 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:874 +#: part/serializers.py:915 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:875 +#: part/serializers.py:916 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:921 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:881 +#: part/serializers.py:922 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:962 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:922 +#: part/serializers.py:963 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:952 +#: part/serializers.py:993 msgid "No part column specified" msgstr "" -#: part/serializers.py:995 +#: part/serializers.py:1036 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:998 +#: part/serializers.py:1039 msgid "No matching part found" msgstr "Подходящая деталь не найдена" -#: part/serializers.py:1001 +#: part/serializers.py:1042 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1010 +#: part/serializers.py:1051 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1059 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1039 +#: part/serializers.py:1080 msgid "At least one BOM item is required" msgstr "" @@ -5450,7 +5517,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:267 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:290 msgid "BOM actions" msgstr "Действия с BOM" @@ -5507,8 +5574,8 @@ msgstr "Создать новую деталь" msgid "New Part" msgstr "Новая деталь" -#: part/templates/part/category.html:169 part/templates/part/detail.html:366 -#: part/templates/part/detail.html:397 +#: part/templates/part/category.html:169 part/templates/part/detail.html:389 +#: part/templates/part/detail.html:420 msgid "Options" msgstr "Настройки" @@ -5556,7 +5623,7 @@ msgstr "Деталь создана успешно" msgid "Import Parts" msgstr "Импортировать детали" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:404 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:407 msgid "Duplicate Part" msgstr "Дублировать деталь" @@ -5593,118 +5660,128 @@ msgstr "" msgid "Refresh" msgstr "Обновить" -#: part/templates/part/detail.html:59 +#: part/templates/part/detail.html:65 +msgid "Add stocktake information" +msgstr "" + +#: part/templates/part/detail.html:66 part/templates/part/part_sidebar.html:49 +#: stock/admin.py:107 templates/js/translated/stock.js:1905 +msgid "Stocktake" +msgstr "" + +#: part/templates/part/detail.html:82 msgid "Part Test Templates" msgstr "" -#: part/templates/part/detail.html:64 +#: part/templates/part/detail.html:87 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:144 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:141 +#: part/templates/part/detail.html:164 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:156 +#: part/templates/part/detail.html:179 msgid "Part Variants" msgstr "Разновидности детали" -#: part/templates/part/detail.html:160 +#: part/templates/part/detail.html:183 msgid "Create new variant" msgstr "Создать новую разновидность" -#: part/templates/part/detail.html:161 +#: part/templates/part/detail.html:184 msgid "New Variant" msgstr "Новая разновидность" -#: part/templates/part/detail.html:188 +#: part/templates/part/detail.html:211 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:225 part/templates/part/part_sidebar.html:52 +#: part/templates/part/detail.html:248 part/templates/part/part_sidebar.html:57 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:229 part/templates/part/detail.html:230 +#: part/templates/part/detail.html:252 part/templates/part/detail.html:253 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:250 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:273 part/templates/part/part_sidebar.html:17 +#: report/templates/report/inventree_bill_of_materials_report.html:100 msgid "Bill of Materials" msgstr "Спецификация" -#: part/templates/part/detail.html:255 +#: part/templates/part/detail.html:278 msgid "Export actions" msgstr "Экспорт" -#: part/templates/part/detail.html:259 templates/js/translated/bom.js:309 +#: part/templates/part/detail.html:282 templates/js/translated/bom.js:309 msgid "Export BOM" msgstr "Экспорт BOM" -#: part/templates/part/detail.html:261 +#: part/templates/part/detail.html:284 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:271 +#: part/templates/part/detail.html:294 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:272 templates/js/translated/part.js:276 +#: part/templates/part/detail.html:295 templates/js/translated/part.js:279 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:273 +#: part/templates/part/detail.html:296 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:278 part/templates/part/detail.html:279 +#: part/templates/part/detail.html:301 part/templates/part/detail.html:302 #: templates/js/translated/bom.js:1268 templates/js/translated/bom.js:1269 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:292 +#: part/templates/part/detail.html:315 msgid "Assemblies" msgstr "Сборки" -#: part/templates/part/detail.html:310 +#: part/templates/part/detail.html:333 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:337 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:360 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:353 +#: part/templates/part/detail.html:376 msgid "Part Suppliers" msgstr "Поставщики" -#: part/templates/part/detail.html:383 +#: part/templates/part/detail.html:406 msgid "Part Manufacturers" msgstr "" -#: part/templates/part/detail.html:399 +#: part/templates/part/detail.html:422 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:696 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:704 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:796 msgid "Add Test Result Template" msgstr "" #: part/templates/part/import_wizard/ajax_part_upload.html:29 #: part/templates/part/import_wizard/part_upload.html:14 -msgid "Unsuffitient privileges." +msgid "Insufficient privileges." msgstr "" #: part/templates/part/import_wizard/part_upload.html:8 @@ -5715,6 +5792,34 @@ msgstr "" msgid "Import Parts from File" msgstr "" +#: part/templates/part/import_wizard/part_upload.html:31 +msgid "Requirements for part import" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "The part import file must contain the required named columns as provided in the " +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:89 +msgid "Download Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:92 +#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 +#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 +msgid "Format" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:93 +#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 +#: templates/js/translated/order.js:999 +msgid "Select file format" +msgstr "" + #: part/templates/part/part_app_base.html:12 msgid "Part List" msgstr "Список деталей" @@ -5804,12 +5909,12 @@ msgstr "" #: templates/js/translated/company.js:660 #: templates/js/translated/company.js:921 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:677 templates/js/translated/part.js:755 +#: templates/js/translated/part.js:680 templates/js/translated/part.js:1026 msgid "Inactive" msgstr "" #: part/templates/part/part_base.html:165 -#: part/templates/part/part_base.html:666 +#: part/templates/part/part_base.html:680 msgid "Show Part Details" msgstr "" @@ -5837,38 +5942,38 @@ msgid "Minimum stock level" msgstr "Минимальный складской запас" #: part/templates/part/part_base.html:330 templates/js/translated/bom.js:1032 -#: templates/js/translated/part.js:798 templates/js/translated/part.js:1604 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:1875 #: templates/js/translated/pricing.js:124 #: templates/js/translated/pricing.js:762 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:345 +#: part/templates/part/part_base.html:359 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:349 +#: part/templates/part/part_base.html:363 #: stock/templates/stock/item_base.html:331 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:449 +#: part/templates/part/part_base.html:463 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:495 +#: part/templates/part/part_base.html:509 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:512 +#: part/templates/part/part_base.html:526 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:564 +#: part/templates/part/part_base.html:578 msgid "No matching images found" msgstr "Подходящие изображения не найдены" -#: part/templates/part/part_base.html:660 +#: part/templates/part/part_base.html:674 msgid "Hide Part Details" msgstr "" @@ -5920,15 +6025,6 @@ msgstr "Внутренняя цена" msgid "No pricing information is available for this part." msgstr "" -#: part/templates/part/part_scheduling.html:13 -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:63 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:2043 templates/js/translated/pricing.js:537 -#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2516 -msgid "Date" -msgstr "" - #: part/templates/part/part_scheduling.html:14 msgid "Scheduled Quantity" msgstr "" @@ -5941,7 +6037,7 @@ msgstr "Разновидности" msgid "Scheduling" msgstr "" -#: part/templates/part/part_sidebar.html:48 +#: part/templates/part/part_sidebar.html:53 msgid "Test Templates" msgstr "" @@ -5960,7 +6056,7 @@ msgstr "" #: part/templates/part/prices.html:25 stock/admin.py:106 #: stock/templates/stock/item_base.html:440 #: templates/js/translated/company.js:1039 -#: templates/js/translated/stock.js:1940 +#: templates/js/translated/stock.js:1935 msgid "Last Updated" msgstr "" @@ -6023,8 +6119,8 @@ msgstr "" msgid "Add Sell Price Break" msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:639 -#: templates/js/translated/part.js:1373 templates/js/translated/part.js:1375 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:1644 templates/js/translated/part.js:1646 msgid "No Stock" msgstr "" @@ -6087,27 +6183,32 @@ msgstr "Неизвестная база данных" msgid "{title} v{version}" msgstr "" -#: part/views.py:109 +#: part/views.py:111 msgid "Match References" msgstr "" -#: part/views.py:354 +#: part/views.py:239 +#, python-brace-format +msgid "Can't import part {name} because there is no category assigned" +msgstr "" + +#: part/views.py:378 msgid "Part QR Code" msgstr "" -#: part/views.py:372 +#: part/views.py:396 msgid "Select Part Image" msgstr "" -#: part/views.py:398 +#: part/views.py:422 msgid "Updated part image" msgstr "" -#: part/views.py:401 +#: part/views.py:425 msgid "Part image not found" msgstr "Изображение детали не найдено" -#: part/views.py:493 +#: part/views.py:517 msgid "Part Pricing" msgstr "" @@ -6156,28 +6257,48 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:29 -#: plugin/builtin/integration/core_notifications.py:31 +#: plugin/builtin/integration/core_notifications.py:33 msgid "InvenTree contributors" msgstr "" -#: plugin/builtin/integration/core_notifications.py:30 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:32 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notificaton methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:37 -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:80 msgid "Enable email notifications" msgstr "Включить уведомления по электронной почте" -#: plugin/builtin/integration/core_notifications.py:38 -#: plugin/builtin/integration/core_notifications.py:57 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:81 msgid "Allow sending of emails for event notifications" msgstr "Разрешить отправку уведомлений о событиях по электронной почте" +#: plugin/builtin/integration/core_notifications.py:45 +msgid "Enable slack notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:46 +msgid "Allow sending of slack channel messages for event notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:51 +msgid "Slack incoming webhook url" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:52 +msgid "URL that is used to send messages to a slack channel" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:162 +msgid "Open link" +msgstr "" + #: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" @@ -6409,6 +6530,10 @@ msgstr "" msgid "Asset file description" msgstr "" +#: report/templates/report/inventree_bill_of_materials_report.html:133 +msgid "Materials needed" +msgstr "" + #: report/templates/report/inventree_build_order_base.html:146 msgid "Required For" msgstr "" @@ -6427,7 +6552,7 @@ msgstr "" #: templates/js/translated/build.js:1244 templates/js/translated/build.js:1745 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:121 templates/js/translated/order.js:3611 -#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:522 +#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:521 msgid "Serial Number" msgstr "Серийный номер" @@ -6459,8 +6584,9 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: stock/admin.py:87 templates/js/translated/stock.js:642 -#: templates/js/translated/stock.js:812 templates/js/translated/stock.js:2765 +#: stock/admin.py:87 templates/js/translated/part.js:749 +#: templates/js/translated/stock.js:641 templates/js/translated/stock.js:811 +#: templates/js/translated/stock.js:2760 msgid "Serial" msgstr "" @@ -6515,13 +6641,9 @@ msgstr "" msgid "Purchase Order ID" msgstr "" -#: stock/admin.py:107 templates/js/translated/stock.js:1910 -msgid "Stocktake" -msgstr "" - #: stock/admin.py:108 stock/models.py:764 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/stock.js:1924 +#: templates/js/translated/stock.js:1919 msgid "Expiry Date" msgstr "" @@ -6936,7 +7058,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "Установленные единицы хранения" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2912 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2907 msgid "Install Stock Item" msgstr "Установить единицу хранения" @@ -6944,7 +7066,7 @@ msgstr "Установить единицу хранения" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1561 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1560 msgid "Add Test Result" msgstr "" @@ -7117,10 +7239,6 @@ msgstr "" msgid "Stale" msgstr "" -#: stock/templates/stock/item_base.html:445 -msgid "Last Stocktake" -msgstr "" - #: stock/templates/stock/item_base.html:449 msgid "No stocktake performed" msgstr "" @@ -7394,7 +7512,8 @@ msgstr "" #: templates/InvenTree/notifications/notifications.html:10 #: templates/InvenTree/notifications/sidebar.html:5 -#: templates/InvenTree/settings/sidebar.html:17 templates/notifications.html:5 +#: templates/InvenTree/settings/sidebar.html:17 +#: templates/InvenTree/settings/sidebar.html:35 templates/notifications.html:5 msgid "Notifications" msgstr "" @@ -7475,6 +7594,14 @@ msgstr "" msgid "Open in new tab" msgstr "Открыть в новой вкладке" +#: templates/InvenTree/settings/notifications.html:9 +msgid "Global Notification Settings" +msgstr "" + +#: templates/InvenTree/settings/notifications.html:18 +msgid "Slug" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "Настройки деталей" @@ -7492,7 +7619,7 @@ msgid "Part Parameter Templates" msgstr "Шаблон параметра детали" #: templates/InvenTree/settings/plugin.html:10 -#: templates/InvenTree/settings/sidebar.html:55 +#: templates/InvenTree/settings/sidebar.html:57 msgid "Plugin Settings" msgstr "Настройки плагинов" @@ -7501,7 +7628,7 @@ msgid "Changing the settings below require you to immediately restart the server msgstr "" #: templates/InvenTree/settings/plugin.html:38 -#: templates/InvenTree/settings/sidebar.html:57 +#: templates/InvenTree/settings/sidebar.html:59 msgid "Plugins" msgstr "" @@ -7669,67 +7796,67 @@ msgstr "" msgid "Edit setting" msgstr "Изменить настройки" -#: templates/InvenTree/settings/settings.html:117 +#: templates/InvenTree/settings/settings.html:118 msgid "Edit Plugin Setting" msgstr "Изменить настройки плагинов" -#: templates/InvenTree/settings/settings.html:119 +#: templates/InvenTree/settings/settings.html:120 msgid "Edit Notification Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:122 +#: templates/InvenTree/settings/settings.html:123 msgid "Edit Global Setting" msgstr "Изменить глобальные настройки" -#: templates/InvenTree/settings/settings.html:124 +#: templates/InvenTree/settings/settings.html:125 msgid "Edit User Setting" msgstr "Изменить настройки пользователя" -#: templates/InvenTree/settings/settings.html:214 +#: templates/InvenTree/settings/settings.html:215 msgid "No category parameter templates found" msgstr "Шаблоны параметров категории не найдены" -#: templates/InvenTree/settings/settings.html:236 -#: templates/InvenTree/settings/settings.html:361 +#: templates/InvenTree/settings/settings.html:237 +#: templates/InvenTree/settings/settings.html:362 msgid "Edit Template" msgstr "Редактировать шаблон" -#: templates/InvenTree/settings/settings.html:237 -#: templates/InvenTree/settings/settings.html:362 +#: templates/InvenTree/settings/settings.html:238 +#: templates/InvenTree/settings/settings.html:363 msgid "Delete Template" msgstr "Удалить шаблон" -#: templates/InvenTree/settings/settings.html:277 +#: templates/InvenTree/settings/settings.html:278 msgid "Create Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:322 +#: templates/InvenTree/settings/settings.html:323 msgid "Delete Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:334 +#: templates/InvenTree/settings/settings.html:335 msgid "No part parameter templates found" msgstr "Шаблоны параметров детали не найдены" -#: templates/InvenTree/settings/settings.html:338 +#: templates/InvenTree/settings/settings.html:339 #: templates/js/translated/news.js:29 #: templates/js/translated/notification.js:36 msgid "ID" msgstr "Идентификатор" -#: templates/InvenTree/settings/settings.html:380 +#: templates/InvenTree/settings/settings.html:381 msgid "Create Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:399 +#: templates/InvenTree/settings/settings.html:400 msgid "Edit Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:413 +#: templates/InvenTree/settings/settings.html:414 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/InvenTree/settings/settings.html:421 +#: templates/InvenTree/settings/settings.html:422 msgid "Delete Part Parameter Template" msgstr "" @@ -7758,12 +7885,12 @@ msgid "Search Settings" msgstr "Настройки поиска" #: templates/InvenTree/settings/sidebar.html:19 -#: templates/InvenTree/settings/sidebar.html:37 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Label Printing" msgstr "" #: templates/InvenTree/settings/sidebar.html:21 -#: templates/InvenTree/settings/sidebar.html:39 +#: templates/InvenTree/settings/sidebar.html:41 msgid "Reporting" msgstr "" @@ -7775,7 +7902,7 @@ msgstr "Глобальные настройки" msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:43 +#: templates/InvenTree/settings/sidebar.html:45 msgid "Categories" msgstr "" @@ -7945,64 +8072,64 @@ msgstr "" msgid "Do you really want to remove the selected email address?" msgstr "Вы действительно хотите удалить выбранный адрес электронной почты?" -#: templates/InvenTree/settings/user_display.html:28 +#: templates/InvenTree/settings/user_display.html:29 msgid "Theme Settings" msgstr "Настройки темы" -#: templates/InvenTree/settings/user_display.html:38 +#: templates/InvenTree/settings/user_display.html:39 msgid "Select theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:49 +#: templates/InvenTree/settings/user_display.html:50 msgid "Set Theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:57 +#: templates/InvenTree/settings/user_display.html:58 msgid "Language Settings" msgstr "Настройки языка" -#: templates/InvenTree/settings/user_display.html:66 +#: templates/InvenTree/settings/user_display.html:67 msgid "Select language" msgstr "" -#: templates/InvenTree/settings/user_display.html:82 +#: templates/InvenTree/settings/user_display.html:83 #, python-format msgid "%(lang_translated)s%% translated" msgstr "" -#: templates/InvenTree/settings/user_display.html:84 +#: templates/InvenTree/settings/user_display.html:85 msgid "No translations available" msgstr "" -#: templates/InvenTree/settings/user_display.html:91 +#: templates/InvenTree/settings/user_display.html:92 msgid "Set Language" msgstr "" -#: templates/InvenTree/settings/user_display.html:94 +#: templates/InvenTree/settings/user_display.html:95 msgid "Some languages are not complete" msgstr "" -#: templates/InvenTree/settings/user_display.html:96 +#: templates/InvenTree/settings/user_display.html:97 msgid "Show only sufficent" msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "and hidden." msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "Show them too" msgstr "" -#: templates/InvenTree/settings/user_display.html:105 +#: templates/InvenTree/settings/user_display.html:106 msgid "Help the translation efforts!" msgstr "" -#: templates/InvenTree/settings/user_display.html:106 +#: templates/InvenTree/settings/user_display.html:107 msgid "Native language translation of the web application is community contributed via crowdin. Contributions are welcomed and encouraged." msgstr "" -#: templates/InvenTree/settings/user_display.html:107 +#: templates/InvenTree/settings/user_display.html:108 msgid "InvenTree Translation Project" msgstr "" @@ -8080,7 +8207,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:22 templates/js/translated/forms.js:646 +#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:649 msgid "Confirm" msgstr "Подтвердить" @@ -8313,7 +8440,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 -#: templates/js/translated/part.js:2445 +#: templates/js/translated/part.js:2726 msgid "Minimum Quantity" msgstr "Минимальное количество" @@ -8466,7 +8593,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1089 +#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1088 msgid "Remove stock item" msgstr "" @@ -8548,16 +8675,6 @@ msgstr "" msgid "Download BOM Template" msgstr "Скачать шаблон BOM" -#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 -#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 -msgid "Format" -msgstr "" - -#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 -#: templates/js/translated/order.js:999 -msgid "Select file format" -msgstr "" - #: templates/js/translated/bom.js:320 msgid "Multi Level BOM" msgstr "" @@ -8688,7 +8805,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:1145 templates/js/translated/build.js:1923 -#: templates/js/translated/part.js:790 templates/js/translated/part.js:1572 +#: templates/js/translated/part.js:1061 templates/js/translated/part.js:1843 msgid "Includes variant stock" msgstr "" @@ -8773,13 +8890,13 @@ msgstr "" msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:317 templates/js/translated/stock.js:95 -#: templates/js/translated/stock.js:237 +#: templates/js/translated/build.js:317 templates/js/translated/stock.js:94 +#: templates/js/translated/stock.js:236 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:319 templates/js/translated/stock.js:97 -#: templates/js/translated/stock.js:239 +#: templates/js/translated/build.js:319 templates/js/translated/stock.js:96 +#: templates/js/translated/stock.js:238 msgid "Latest serial number" msgstr "" @@ -8987,9 +9104,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1466 -#: templates/js/translated/part.js:2003 templates/js/translated/stock.js:1725 -#: templates/js/translated/stock.js:2428 +#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1737 +#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1724 +#: templates/js/translated/stock.js:2423 msgid "Select" msgstr "" @@ -9001,7 +9118,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2695 +#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2690 msgid "No user information" msgstr "" @@ -9074,34 +9191,34 @@ msgid "No manufacturer parts found" msgstr "Информация о детали производителя не найдена" #: templates/js/translated/company.js:652 -#: templates/js/translated/company.js:913 templates/js/translated/part.js:661 -#: templates/js/translated/part.js:747 +#: templates/js/translated/company.js:913 templates/js/translated/part.js:664 +#: templates/js/translated/part.js:1018 msgid "Template part" msgstr "Деталь-шаблон" #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:917 templates/js/translated/part.js:665 -#: templates/js/translated/part.js:751 +#: templates/js/translated/company.js:917 templates/js/translated/part.js:668 +#: templates/js/translated/part.js:1022 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:784 templates/js/translated/part.js:870 +#: templates/js/translated/company.js:784 templates/js/translated/part.js:1141 msgid "No parameters found" msgstr "Параметры не найдены" -#: templates/js/translated/company.js:821 templates/js/translated/part.js:912 +#: templates/js/translated/company.js:821 templates/js/translated/part.js:1183 msgid "Edit parameter" msgstr "Редактировать параметр" -#: templates/js/translated/company.js:822 templates/js/translated/part.js:913 +#: templates/js/translated/company.js:822 templates/js/translated/part.js:1184 msgid "Delete parameter" msgstr "Удалить параметр" -#: templates/js/translated/company.js:841 templates/js/translated/part.js:930 +#: templates/js/translated/company.js:841 templates/js/translated/part.js:1201 msgid "Edit Parameter" msgstr "Редактировать параметр" -#: templates/js/translated/company.js:852 templates/js/translated/part.js:942 +#: templates/js/translated/company.js:852 templates/js/translated/part.js:1213 msgid "Delete Parameter" msgstr "Удалить параметр" @@ -9181,61 +9298,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:369 templates/js/translated/forms.js:384 -#: templates/js/translated/forms.js:398 templates/js/translated/forms.js:412 +#: templates/js/translated/forms.js:372 templates/js/translated/forms.js:387 +#: templates/js/translated/forms.js:401 templates/js/translated/forms.js:415 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:371 +#: templates/js/translated/forms.js:374 msgid "Create operation not allowed" msgstr "Операция создания не разрешена" -#: templates/js/translated/forms.js:386 +#: templates/js/translated/forms.js:389 msgid "Update operation not allowed" msgstr "Операция обновления не разрешена" -#: templates/js/translated/forms.js:400 +#: templates/js/translated/forms.js:403 msgid "Delete operation not allowed" msgstr "Операция удаления не разрешена" -#: templates/js/translated/forms.js:414 +#: templates/js/translated/forms.js:417 msgid "View operation not allowed" msgstr "Операция просмотра не разрешена" -#: templates/js/translated/forms.js:672 +#: templates/js/translated/forms.js:675 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:773 +#: templates/js/translated/forms.js:776 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1266 templates/modals.html:19 +#: templates/js/translated/forms.js:1269 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "Форма содержит ошибки" -#: templates/js/translated/forms.js:1703 +#: templates/js/translated/forms.js:1706 msgid "No results found" msgstr "Не найдено" -#: templates/js/translated/forms.js:1919 templates/search.html:29 +#: templates/js/translated/forms.js:1922 templates/search.html:29 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2172 +#: templates/js/translated/forms.js:2175 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:2640 +#: templates/js/translated/forms.js:2643 msgid "Select Columns" msgstr "" @@ -9256,7 +9373,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1113 +#: templates/js/translated/stock.js:1112 msgid "Select Stock Items" msgstr "" @@ -9590,7 +9707,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2184 +#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2179 msgid "Stock Status" msgstr "" @@ -9614,7 +9731,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1982 templates/js/translated/part.js:983 +#: templates/js/translated/order.js:1982 templates/js/translated/part.js:1254 msgid "No purchase orders found" msgstr "Заказов на закупку не найдено" @@ -9647,8 +9764,8 @@ msgstr "" msgid "Total" msgstr "" -#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1085 -#: templates/js/translated/part.js:1137 +#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1356 +#: templates/js/translated/part.js:1408 msgid "Total Quantity" msgstr "" @@ -9666,11 +9783,11 @@ msgid "Total Price" msgstr "Общая стоимость" #: templates/js/translated/order.js:2388 templates/js/translated/order.js:3900 -#: templates/js/translated/part.js:1121 +#: templates/js/translated/part.js:1392 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1166 +#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1437 msgid "Receive line item" msgstr "" @@ -9791,7 +9908,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3623 templates/js/translated/order.js:3712 -#: templates/js/translated/stock.js:1641 +#: templates/js/translated/stock.js:1640 msgid "Shipped to customer" msgstr "" @@ -9835,334 +9952,358 @@ msgstr "" msgid "No matching lines" msgstr "" -#: templates/js/translated/part.js:52 +#: templates/js/translated/part.js:55 msgid "Part Attributes" msgstr "Атрибуты детали" -#: templates/js/translated/part.js:56 +#: templates/js/translated/part.js:59 msgid "Part Creation Options" msgstr "Настройки создания детали" -#: templates/js/translated/part.js:60 +#: templates/js/translated/part.js:63 msgid "Part Duplication Options" msgstr "Настройки дублирования детали" -#: templates/js/translated/part.js:64 +#: templates/js/translated/part.js:67 msgid "Supplier Options" msgstr "Настройки поставщика" -#: templates/js/translated/part.js:78 +#: templates/js/translated/part.js:81 msgid "Add Part Category" msgstr "Добавить категорию" -#: templates/js/translated/part.js:168 +#: templates/js/translated/part.js:171 msgid "Create Initial Stock" msgstr "" -#: templates/js/translated/part.js:169 +#: templates/js/translated/part.js:172 msgid "Create an initial stock item for this part" msgstr "" -#: templates/js/translated/part.js:176 +#: templates/js/translated/part.js:179 msgid "Initial Stock Quantity" msgstr "" -#: templates/js/translated/part.js:177 +#: templates/js/translated/part.js:180 msgid "Specify initial stock quantity for this part" msgstr "" -#: templates/js/translated/part.js:184 +#: templates/js/translated/part.js:187 msgid "Select destination stock location" msgstr "" -#: templates/js/translated/part.js:202 +#: templates/js/translated/part.js:205 msgid "Copy Category Parameters" msgstr "Копировать параметры категории" -#: templates/js/translated/part.js:203 +#: templates/js/translated/part.js:206 msgid "Copy parameter templates from selected part category" msgstr "" -#: templates/js/translated/part.js:211 +#: templates/js/translated/part.js:214 msgid "Add Supplier Data" msgstr "Добавить данные поставщика" -#: templates/js/translated/part.js:212 +#: templates/js/translated/part.js:215 msgid "Create initial supplier data for this part" msgstr "Создать начальные данные поставщика для этой детали" -#: templates/js/translated/part.js:268 +#: templates/js/translated/part.js:271 msgid "Copy Image" msgstr "" -#: templates/js/translated/part.js:269 +#: templates/js/translated/part.js:272 msgid "Copy image from original part" msgstr "" -#: templates/js/translated/part.js:277 +#: templates/js/translated/part.js:280 msgid "Copy bill of materials from original part" msgstr "" -#: templates/js/translated/part.js:284 +#: templates/js/translated/part.js:287 msgid "Copy Parameters" msgstr "" -#: templates/js/translated/part.js:285 +#: templates/js/translated/part.js:288 msgid "Copy parameter data from original part" msgstr "" -#: templates/js/translated/part.js:298 +#: templates/js/translated/part.js:301 msgid "Parent part category" msgstr "Родительская категория" -#: templates/js/translated/part.js:313 templates/js/translated/stock.js:122 +#: templates/js/translated/part.js:316 templates/js/translated/stock.js:121 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:329 +#: templates/js/translated/part.js:332 msgid "Edit Part Category" msgstr "Редактировать категорию" -#: templates/js/translated/part.js:342 +#: templates/js/translated/part.js:345 msgid "Are you sure you want to delete this part category?" msgstr "Вы уверены, что хотите удалить эту категорию?" -#: templates/js/translated/part.js:347 +#: templates/js/translated/part.js:350 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:359 msgid "Delete Part Category" msgstr "Удалить категорию" -#: templates/js/translated/part.js:360 +#: templates/js/translated/part.js:363 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:368 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:394 +#: templates/js/translated/part.js:397 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:396 +#: templates/js/translated/part.js:399 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:407 +#: templates/js/translated/part.js:410 msgid "Create Part Variant" msgstr "Создать разновидность детали" -#: templates/js/translated/part.js:459 +#: templates/js/translated/part.js:462 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:460 +#: templates/js/translated/part.js:463 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:477 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:476 +#: templates/js/translated/part.js:479 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:477 +#: templates/js/translated/part.js:480 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:478 +#: templates/js/translated/part.js:481 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:485 +#: templates/js/translated/part.js:488 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:521 +#: templates/js/translated/part.js:524 msgid "You are subscribed to notifications for this item" msgstr "Вы подписаны на уведомления для данного элемента" -#: templates/js/translated/part.js:523 +#: templates/js/translated/part.js:526 msgid "You have subscribed to notifications for this item" msgstr "Вы подписались на уведомления для данного элемента" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:531 msgid "Subscribe to notifications for this item" msgstr "Включить уведомления для данного элемента" -#: templates/js/translated/part.js:530 +#: templates/js/translated/part.js:533 msgid "You have unsubscribed to notifications for this item" msgstr "Вы отписались от уведомлений для данного элемента" -#: templates/js/translated/part.js:547 +#: templates/js/translated/part.js:550 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:560 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:560 +#: templates/js/translated/part.js:563 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:585 +#: templates/js/translated/part.js:588 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1554 +#: templates/js/translated/part.js:612 templates/js/translated/part.js:1825 #: templates/js/translated/table_filters.js:488 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:622 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:653 templates/js/translated/part.js:739 +#: templates/js/translated/part.js:656 templates/js/translated/part.js:1010 msgid "Trackable part" msgstr "Отслеживаемая деталь" -#: templates/js/translated/part.js:657 templates/js/translated/part.js:743 +#: templates/js/translated/part.js:660 templates/js/translated/part.js:1014 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:669 +#: templates/js/translated/part.js:672 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:673 +#: templates/js/translated/part.js:676 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:815 +#: templates/js/translated/part.js:761 +msgid "Stock item has not been checked recently" +msgstr "" + +#: templates/js/translated/part.js:769 +msgid "Update item" +msgstr "" + +#: templates/js/translated/part.js:770 +msgid "Delete item" +msgstr "" + +#: templates/js/translated/part.js:871 +msgid "No stocktake information available" +msgstr "" + +#: templates/js/translated/part.js:910 templates/js/translated/part.js:933 +msgid "Edit Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:914 templates/js/translated/part.js:945 +msgid "Delete Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:1086 msgid "No variants found" msgstr "Разновидности не найдены" -#: templates/js/translated/part.js:1236 +#: templates/js/translated/part.js:1507 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1260 +#: templates/js/translated/part.js:1531 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1327 templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1598 templates/js/translated/part.js:1936 msgid "No parts found" msgstr "Детали не найдены" -#: templates/js/translated/part.js:1521 +#: templates/js/translated/part.js:1792 msgid "No category" msgstr "Нет категории" -#: templates/js/translated/part.js:1552 +#: templates/js/translated/part.js:1823 msgid "No stock" msgstr "" -#: templates/js/translated/part.js:1576 +#: templates/js/translated/part.js:1847 msgid "Allocated to build orders" msgstr "" -#: templates/js/translated/part.js:1580 +#: templates/js/translated/part.js:1851 msgid "Allocated to sales orders" msgstr "" -#: templates/js/translated/part.js:1679 templates/js/translated/part.js:1922 -#: templates/js/translated/stock.js:2387 +#: templates/js/translated/part.js:1960 templates/js/translated/part.js:2203 +#: templates/js/translated/stock.js:2382 msgid "Display as list" msgstr "Список" -#: templates/js/translated/part.js:1695 +#: templates/js/translated/part.js:1976 msgid "Display as grid" msgstr "Таблица" -#: templates/js/translated/part.js:1761 +#: templates/js/translated/part.js:2042 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1766 +#: templates/js/translated/part.js:2047 msgid "Set Part Category" msgstr "Укажите категорию" -#: templates/js/translated/part.js:1771 +#: templates/js/translated/part.js:2052 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1784 +#: templates/js/translated/part.js:2065 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1942 templates/js/translated/stock.js:2407 +#: templates/js/translated/part.js:2223 templates/js/translated/stock.js:2402 msgid "Display as tree" msgstr "Дерево" -#: templates/js/translated/part.js:2022 +#: templates/js/translated/part.js:2303 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2038 +#: templates/js/translated/part.js:2319 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2383 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2153 templates/js/translated/stock.js:1338 +#: templates/js/translated/part.js:2434 templates/js/translated/stock.js:1337 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2154 templates/js/translated/stock.js:1339 -#: templates/js/translated/stock.js:1599 +#: templates/js/translated/part.js:2435 templates/js/translated/stock.js:1338 +#: templates/js/translated/stock.js:1598 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2441 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2182 +#: templates/js/translated/part.js:2463 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2196 +#: templates/js/translated/part.js:2477 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2277 templates/js/translated/part.js:2278 +#: templates/js/translated/part.js:2558 templates/js/translated/part.js:2559 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2280 +#: templates/js/translated/part.js:2561 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:2286 +#: templates/js/translated/part.js:2567 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:2336 +#: templates/js/translated/part.js:2617 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2623 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:2438 +#: templates/js/translated/part.js:2719 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2454 +#: templates/js/translated/part.js:2735 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:2499 +#: templates/js/translated/part.js:2780 msgid "Minimum Stock Level" msgstr "" @@ -10290,388 +10431,388 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:74 +#: templates/js/translated/stock.js:73 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:104 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:114 +#: templates/js/translated/stock.js:113 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:148 +#: templates/js/translated/stock.js:147 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:163 +#: templates/js/translated/stock.js:162 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:177 +#: templates/js/translated/stock.js:176 msgid "Are you sure you want to delete this stock location?" msgstr "Вы уверены, что хотите удалить место хранения?" -#: templates/js/translated/stock.js:184 +#: templates/js/translated/stock.js:183 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:193 +#: templates/js/translated/stock.js:192 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:197 +#: templates/js/translated/stock.js:196 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:201 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:256 +#: templates/js/translated/stock.js:255 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:298 +#: templates/js/translated/stock.js:297 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:304 +#: templates/js/translated/stock.js:303 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:368 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:389 +#: templates/js/translated/stock.js:388 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:405 +#: templates/js/translated/stock.js:404 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:410 +#: templates/js/translated/stock.js:409 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:431 +#: templates/js/translated/stock.js:430 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:481 +#: templates/js/translated/stock.js:480 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:494 +#: templates/js/translated/stock.js:493 msgid "Created multiple stock items" msgstr "Создано несколько единиц хранения" -#: templates/js/translated/stock.js:519 +#: templates/js/translated/stock.js:518 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:523 templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:522 templates/js/translated/stock.js:523 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:540 +#: templates/js/translated/stock.js:539 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:560 +#: templates/js/translated/stock.js:559 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:568 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:692 +#: templates/js/translated/stock.js:691 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:693 +#: templates/js/translated/stock.js:692 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:770 +#: templates/js/translated/stock.js:769 msgid "Warning: Merge operation cannot be reversed" msgstr "Предупреждение: Операция объединения не может быть отменена" -#: templates/js/translated/stock.js:771 +#: templates/js/translated/stock.js:770 msgid "Some information will be lost when merging stock items" msgstr "Следующие данные будут потеряны в процессе объединения" -#: templates/js/translated/stock.js:773 +#: templates/js/translated/stock.js:772 msgid "Stock transaction history will be deleted for merged items" msgstr "История складских перемещений будет удалена для объединённых элементов" -#: templates/js/translated/stock.js:774 +#: templates/js/translated/stock.js:773 msgid "Supplier part information will be deleted for merged items" msgstr "Информация о деталях поставщика будет удалена для объединённых элементов" -#: templates/js/translated/stock.js:863 +#: templates/js/translated/stock.js:862 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:864 +#: templates/js/translated/stock.js:863 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:958 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:959 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:966 +#: templates/js/translated/stock.js:965 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:967 +#: templates/js/translated/stock.js:966 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:971 +#: templates/js/translated/stock.js:970 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:972 +#: templates/js/translated/stock.js:971 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:976 +#: templates/js/translated/stock.js:975 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:977 users/models.py:220 +#: templates/js/translated/stock.js:976 users/models.py:221 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:981 +#: templates/js/translated/stock.js:980 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1114 +#: templates/js/translated/stock.js:1113 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1141 +#: templates/js/translated/stock.js:1140 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1277 +#: templates/js/translated/stock.js:1276 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1279 +#: templates/js/translated/stock.js:1278 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1284 +#: templates/js/translated/stock.js:1283 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1331 +#: templates/js/translated/stock.js:1330 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1334 +#: templates/js/translated/stock.js:1333 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1360 +#: templates/js/translated/stock.js:1359 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1417 +#: templates/js/translated/stock.js:1416 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1582 +#: templates/js/translated/stock.js:1581 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1604 +#: templates/js/translated/stock.js:1603 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1633 +#: templates/js/translated/stock.js:1632 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1637 +#: templates/js/translated/stock.js:1636 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1645 +#: templates/js/translated/stock.js:1644 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1651 +#: templates/js/translated/stock.js:1650 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1820 +#: templates/js/translated/stock.js:1815 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1825 +#: templates/js/translated/stock.js:1820 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1828 +#: templates/js/translated/stock.js:1823 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1831 +#: templates/js/translated/stock.js:1826 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1833 +#: templates/js/translated/stock.js:1828 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1835 +#: templates/js/translated/stock.js:1830 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1838 +#: templates/js/translated/stock.js:1833 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1837 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1844 +#: templates/js/translated/stock.js:1839 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1846 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1853 +#: templates/js/translated/stock.js:1848 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1855 +#: templates/js/translated/stock.js:1850 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1859 +#: templates/js/translated/stock.js:1854 #: templates/js/translated/table_filters.js:216 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1989 +#: templates/js/translated/stock.js:1984 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2026 +#: templates/js/translated/stock.js:2021 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2199 +#: templates/js/translated/stock.js:2194 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2213 +#: templates/js/translated/stock.js:2208 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2214 +#: templates/js/translated/stock.js:2209 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2446 +#: templates/js/translated/stock.js:2441 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2536 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2557 +#: templates/js/translated/stock.js:2552 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2579 +#: templates/js/translated/stock.js:2574 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2598 +#: templates/js/translated/stock.js:2593 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2617 +#: templates/js/translated/stock.js:2612 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2635 +#: templates/js/translated/stock.js:2630 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2658 +#: templates/js/translated/stock.js:2653 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2666 +#: templates/js/translated/stock.js:2661 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2737 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2793 templates/js/translated/stock.js:2829 +#: templates/js/translated/stock.js:2788 templates/js/translated/stock.js:2824 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2845 +#: templates/js/translated/stock.js:2840 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2866 +#: templates/js/translated/stock.js:2861 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2867 +#: templates/js/translated/stock.js:2862 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2869 +#: templates/js/translated/stock.js:2864 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2870 +#: templates/js/translated/stock.js:2865 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:2866 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2872 +#: templates/js/translated/stock.js:2867 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2885 +#: templates/js/translated/stock.js:2880 msgid "Select part to install" msgstr "" @@ -10696,7 +10837,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:92 -#: templates/js/translated/table_filters.js:516 +#: templates/js/translated/table_filters.js:520 msgid "Has Pricing" msgstr "" @@ -10912,6 +11053,10 @@ msgstr "" msgid "Purchasable" msgstr "" +#: templates/js/translated/table_filters.js:504 +msgid "Has stocktake entries" +msgstr "" + #: templates/js/translated/tables.js:70 msgid "Display calendar view" msgstr "" @@ -11206,35 +11351,35 @@ msgstr "Права доступа" msgid "Important dates" msgstr "" -#: users/models.py:207 +#: users/models.py:208 msgid "Permission set" msgstr "Права доступа" -#: users/models.py:215 +#: users/models.py:216 msgid "Group" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "View" msgstr "Вид" -#: users/models.py:218 +#: users/models.py:219 msgid "Permission to view items" msgstr "Разрешение на просмотр элементов" -#: users/models.py:220 +#: users/models.py:221 msgid "Permission to add items" msgstr "Разрешение на добавление элементов" -#: users/models.py:222 +#: users/models.py:223 msgid "Change" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Permissions to edit items" msgstr "Разрешение на редактирование элементов" -#: users/models.py:224 +#: users/models.py:225 msgid "Permission to delete items" msgstr "Разрешение на удаление элементов" diff --git a/InvenTree/locale/sl/LC_MESSAGES/django.po b/InvenTree/locale/sl/LC_MESSAGES/django.po index de590cc57c..b98117195b 100644 --- a/InvenTree/locale/sl/LC_MESSAGES/django.po +++ b/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: 2022-12-30 20:46+0000\n" -"PO-Revision-Date: 2022-12-31 11:30\n" +"POT-Creation-Date: 2023-01-01 11:05+0000\n" +"PO-Revision-Date: 2023-01-01 11:27\n" "Last-Translator: \n" "Language-Team: Slovenian\n" "Language: sl_SI\n" @@ -34,7 +34,7 @@ msgstr "Vnesi datum" #: company/templates/company/sidebar.html:25 order/models.py:943 #: order/templates/order/po_sidebar.html:11 #: order/templates/order/so_sidebar.html:17 part/admin.py:27 -#: part/templates/part/part_sidebar.html:57 +#: part/models.py:2932 part/templates/part/part_sidebar.html:62 #: report/templates/report/inventree_build_order_base.html:172 #: stock/admin.py:103 stock/models.py:2061 stock/models.py:2169 #: stock/serializers.py:321 stock/serializers.py:454 stock/serializers.py:535 @@ -44,8 +44,8 @@ msgstr "Vnesi datum" #: templates/js/translated/company.js:1023 #: templates/js/translated/order.js:2435 templates/js/translated/order.js:2569 #: templates/js/translated/order.js:3067 templates/js/translated/order.js:4004 -#: templates/js/translated/order.js:4385 templates/js/translated/stock.js:1413 -#: templates/js/translated/stock.js:2020 +#: templates/js/translated/order.js:4385 templates/js/translated/part.js:882 +#: templates/js/translated/stock.js:1412 templates/js/translated/stock.js:2015 msgid "Notes" msgstr "Zapiski" @@ -204,18 +204,18 @@ msgstr "Priloga" msgid "Select file to attach" msgstr "Izberite prilogo" -#: InvenTree/models.py:412 common/models.py:2366 company/models.py:129 +#: InvenTree/models.py:412 common/models.py:2373 company/models.py:129 #: company/models.py:281 company/models.py:516 order/models.py:85 -#: order/models.py:1282 part/admin.py:25 part/models.py:865 +#: order/models.py:1282 part/admin.py:25 part/models.py:866 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: stock/admin.py:102 templates/js/translated/company.js:692 #: templates/js/translated/company.js:1012 -#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1615 +#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1886 msgid "Link" msgstr "Povezava" -#: InvenTree/models.py:413 build/models.py:290 part/models.py:866 +#: InvenTree/models.py:413 build/models.py:290 part/models.py:867 #: stock/models.py:716 msgid "Link to external URL" msgstr "Zunanja povezava" @@ -229,12 +229,13 @@ msgstr "Komentar" msgid "File comment" msgstr "Komentar datoteke" -#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1810 -#: common/models.py:1811 common/models.py:2034 common/models.py:2035 -#: common/models.py:2296 common/models.py:2297 part/models.py:2948 -#: part/models.py:2968 plugin/models.py:264 plugin/models.py:265 +#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1817 +#: common/models.py:1818 common/models.py:2041 common/models.py:2042 +#: common/models.py:2303 common/models.py:2304 part/models.py:2940 +#: part/models.py:3026 part/models.py:3046 plugin/models.py:264 +#: plugin/models.py:265 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2689 +#: templates/js/translated/stock.js:2684 msgid "User" msgstr "Uporabnik" @@ -271,19 +272,20 @@ msgstr "Napaka pri preimenovanju datoteke" msgid "Invalid choice" msgstr "Nedovoljena izbira" -#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2020 -#: company/models.py:363 label/models.py:101 part/models.py:809 -#: part/models.py:3123 plugin/models.py:94 report/models.py:152 +#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2027 +#: company/models.py:363 label/models.py:101 part/models.py:810 +#: part/models.py:3201 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 +#: templates/InvenTree/settings/notifications.html:17 #: templates/InvenTree/settings/plugin.html:60 #: templates/InvenTree/settings/plugin.html:104 #: templates/InvenTree/settings/plugin_settings.html:23 -#: templates/InvenTree/settings/settings.html:344 +#: templates/InvenTree/settings/settings.html:345 #: templates/js/translated/company.js:581 #: templates/js/translated/company.js:794 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:711 templates/js/translated/part.js:880 -#: templates/js/translated/part.js:2010 templates/js/translated/stock.js:2434 +#: templates/js/translated/part.js:982 templates/js/translated/part.js:1151 +#: templates/js/translated/part.js:2291 templates/js/translated/stock.js:2429 msgid "Name" msgstr "Ime" @@ -292,24 +294,25 @@ msgstr "Ime" #: company/models.py:522 company/templates/company/company_base.html:72 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:108 label/models.py:108 -#: order/models.py:83 part/admin.py:141 part/admin.py:222 part/models.py:832 -#: part/models.py:3132 part/templates/part/category.html:75 +#: order/models.py:83 part/admin.py:174 part/admin.py:255 part/models.py:833 +#: part/models.py:3210 part/templates/part/category.html:75 #: part/templates/part/part_base.html:172 #: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/admin.py:25 stock/templates/stock/location.html:117 +#: templates/InvenTree/settings/notifications.html:19 #: templates/InvenTree/settings/plugin_settings.html:28 -#: templates/InvenTree/settings/settings.html:355 +#: templates/InvenTree/settings/settings.html:356 #: templates/js/translated/bom.js:592 templates/js/translated/bom.js:895 #: templates/js/translated/build.js:2596 templates/js/translated/company.js:445 #: templates/js/translated/company.js:703 #: templates/js/translated/company.js:987 templates/js/translated/order.js:2030 #: templates/js/translated/order.js:2267 templates/js/translated/order.js:2845 -#: templates/js/translated/part.js:773 templates/js/translated/part.js:1223 -#: templates/js/translated/part.js:1497 templates/js/translated/part.js:2046 -#: templates/js/translated/part.js:2121 templates/js/translated/stock.js:1787 -#: templates/js/translated/stock.js:2466 templates/js/translated/stock.js:2526 +#: templates/js/translated/part.js:1044 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1768 templates/js/translated/part.js:2327 +#: templates/js/translated/part.js:2402 templates/js/translated/stock.js:1782 +#: templates/js/translated/stock.js:2461 templates/js/translated/stock.js:2521 msgid "Description" msgstr "Opis" @@ -322,7 +325,7 @@ msgid "parent" msgstr "nadrejen" #: InvenTree/models.py:580 InvenTree/models.py:581 -#: templates/js/translated/part.js:2055 templates/js/translated/stock.js:2475 +#: templates/js/translated/part.js:2336 templates/js/translated/stock.js:2470 msgid "Path" msgstr "Pot" @@ -354,7 +357,7 @@ msgstr "Napaka strežnika" msgid "An error has been logged by the server." msgstr "Zaznana napaka na strežniku." -#: InvenTree/serializers.py:58 part/models.py:3468 +#: InvenTree/serializers.py:58 part/models.py:3546 msgid "Must be a valid number" msgstr "Mora biti veljavna številka" @@ -421,107 +424,107 @@ msgstr "Povezava do oddaljene slike" msgid "Downloading images from remote URL is not enabled" msgstr "Prenos slik iz oddaljene povezave ni omogočen" -#: InvenTree/settings.py:639 +#: InvenTree/settings.py:642 msgid "Czech" msgstr "Češko" -#: InvenTree/settings.py:640 +#: InvenTree/settings.py:643 msgid "Danish" msgstr "Danščina" -#: InvenTree/settings.py:641 +#: InvenTree/settings.py:644 msgid "German" msgstr "Nemščina" -#: InvenTree/settings.py:642 +#: InvenTree/settings.py:645 msgid "Greek" msgstr "Grščina" -#: InvenTree/settings.py:643 +#: InvenTree/settings.py:646 msgid "English" msgstr "Angleščina" -#: InvenTree/settings.py:644 +#: InvenTree/settings.py:647 msgid "Spanish" msgstr "Španščina" -#: InvenTree/settings.py:645 +#: InvenTree/settings.py:648 msgid "Spanish (Mexican)" msgstr "Španščina (Mehiško)" -#: InvenTree/settings.py:646 +#: InvenTree/settings.py:649 msgid "Farsi / Persian" msgstr "Farsi / Perzijsko" -#: InvenTree/settings.py:647 +#: InvenTree/settings.py:650 msgid "French" msgstr "Francoščina" -#: InvenTree/settings.py:648 +#: InvenTree/settings.py:651 msgid "Hebrew" msgstr "Hebrejščina" -#: InvenTree/settings.py:649 +#: InvenTree/settings.py:652 msgid "Hungarian" msgstr "Madžarščina" -#: InvenTree/settings.py:650 +#: InvenTree/settings.py:653 msgid "Italian" msgstr "Italijanščina" -#: InvenTree/settings.py:651 +#: InvenTree/settings.py:654 msgid "Japanese" msgstr "Japonščina" -#: InvenTree/settings.py:652 +#: InvenTree/settings.py:655 msgid "Korean" msgstr "Korejščina" -#: InvenTree/settings.py:653 +#: InvenTree/settings.py:656 msgid "Dutch" msgstr "Nizozemščina" -#: InvenTree/settings.py:654 +#: InvenTree/settings.py:657 msgid "Norwegian" msgstr "Norveščina" -#: InvenTree/settings.py:655 +#: InvenTree/settings.py:658 msgid "Polish" msgstr "Poljščina" -#: InvenTree/settings.py:656 +#: InvenTree/settings.py:659 msgid "Portuguese" msgstr "Portugalščina" -#: InvenTree/settings.py:657 +#: InvenTree/settings.py:660 msgid "Portuguese (Brazilian)" msgstr "Portugalščina (Brazilsko)" -#: InvenTree/settings.py:658 +#: InvenTree/settings.py:661 msgid "Russian" msgstr "Ruščina" -#: InvenTree/settings.py:659 +#: InvenTree/settings.py:662 msgid "Slovenian" msgstr "Slovenščina" -#: InvenTree/settings.py:660 +#: InvenTree/settings.py:663 msgid "Swedish" msgstr "Švedščina" -#: InvenTree/settings.py:661 +#: InvenTree/settings.py:664 msgid "Thai" msgstr "Tajščina" -#: InvenTree/settings.py:662 +#: InvenTree/settings.py:665 msgid "Turkish" msgstr "Turščina" -#: InvenTree/settings.py:663 +#: InvenTree/settings.py:666 msgid "Vietnamese" msgstr "Vietnamščina" -#: InvenTree/settings.py:664 +#: InvenTree/settings.py:667 msgid "Chinese" msgstr "Kitajščina" @@ -652,7 +655,7 @@ msgstr "Razdeljena od nadrejene postavke" msgid "Split child item" msgstr "Razdeljena podrejena postavka" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2124 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2119 msgid "Merged stock items" msgstr "Združena zaloga postavk" @@ -756,7 +759,7 @@ msgstr "Nalog izgradnje" #: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:141 -#: templates/InvenTree/settings/sidebar.html:47 +#: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:254 users/models.py:41 msgid "Build Orders" msgstr "Nalogi izgradnje" @@ -766,8 +769,9 @@ msgid "Build Order Reference" msgstr "Referenca naloga izgradnje" #: build/models.py:155 order/models.py:241 order/models.py:651 -#: order/models.py:941 part/admin.py:224 part/models.py:3378 +#: order/models.py:941 part/admin.py:257 part/models.py:3456 #: part/templates/part/upload_bom.html:54 +#: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 #: templates/js/translated/bom.js:729 templates/js/translated/bom.js:905 @@ -793,13 +797,15 @@ msgstr "Nalog izgradnje na katerega se ta izgradnaj nanaša" #: build/models.py:180 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:684 #: order/models.py:1038 order/models.py:1149 order/models.py:1150 -#: part/models.py:381 part/models.py:2781 part/models.py:2894 -#: part/models.py:2909 part/models.py:2928 part/models.py:2946 -#: part/models.py:3045 part/models.py:3166 part/models.py:3258 -#: part/models.py:3343 part/models.py:3659 part/serializers.py:853 -#: part/templates/part/part_app_base.html:8 +#: part/models.py:382 part/models.py:2799 part/models.py:2912 +#: part/models.py:2972 part/models.py:2987 part/models.py:3006 +#: part/models.py:3024 part/models.py:3123 part/models.py:3244 +#: part/models.py:3336 part/models.py:3421 part/models.py:3737 +#: part/serializers.py:894 part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 +#: report/templates/report/inventree_bill_of_materials_report.html:110 +#: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_base.html:109 #: report/templates/report/inventree_po_report.html:89 #: report/templates/report/inventree_so_report.html:90 stock/serializers.py:90 @@ -819,12 +825,12 @@ msgstr "Nalog izgradnje na katerega se ta izgradnaj nanaša" #: templates/js/translated/order.js:1172 templates/js/translated/order.js:1676 #: templates/js/translated/order.js:2252 templates/js/translated/order.js:3199 #: templates/js/translated/order.js:3595 templates/js/translated/order.js:3825 -#: templates/js/translated/part.js:1208 templates/js/translated/part.js:1280 -#: templates/js/translated/part.js:1474 templates/js/translated/pricing.js:102 -#: templates/js/translated/stock.js:618 templates/js/translated/stock.js:783 -#: templates/js/translated/stock.js:993 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2552 templates/js/translated/stock.js:2747 -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/part.js:1479 templates/js/translated/part.js:1551 +#: templates/js/translated/part.js:1745 templates/js/translated/pricing.js:102 +#: templates/js/translated/stock.js:617 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:992 templates/js/translated/stock.js:1738 +#: templates/js/translated/stock.js:2547 templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2879 msgid "Part" msgstr "Del" @@ -890,7 +896,7 @@ msgstr "Številka serije" msgid "Batch code for this build output" msgstr "Številka serije za to izgradnjo" -#: build/models.py:252 order/models.py:87 part/models.py:1001 +#: build/models.py:252 order/models.py:87 part/models.py:1002 #: part/templates/part/part_base.html:318 templates/js/translated/order.js:2858 msgid "Creation Date" msgstr "Datum ustvarjenja" @@ -923,7 +929,7 @@ msgstr "Uporabnik, ki je izdal nalog za izgradnjo" #: build/models.py:283 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:101 #: order/templates/order/order_base.html:185 -#: order/templates/order/sales_order_base.html:183 part/models.py:1005 +#: order/templates/order/sales_order_base.html:183 part/models.py:1006 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2658 templates/js/translated/order.js:2064 msgid "Responsible" @@ -936,7 +942,7 @@ msgstr "Uporabnik odgovoren za to izgradnjo" #: build/models.py:289 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:188 -#: part/templates/part/part_base.html:376 stock/models.py:714 +#: part/templates/part/part_base.html:390 stock/models.py:714 #: stock/templates/stock/item_base.html:203 msgid "External Link" msgstr "Zunanja povezava" @@ -1011,8 +1017,8 @@ msgstr "Izdelaj da prestaviš dele" #: templates/js/translated/order.js:107 templates/js/translated/order.js:3200 #: templates/js/translated/order.js:3502 templates/js/translated/order.js:3507 #: templates/js/translated/order.js:3602 templates/js/translated/order.js:3694 -#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 -#: templates/js/translated/stock.js:2625 +#: templates/js/translated/part.js:803 templates/js/translated/stock.js:618 +#: templates/js/translated/stock.js:783 templates/js/translated/stock.js:2620 msgid "Stock Item" msgstr "Postavka zaloge" @@ -1022,12 +1028,13 @@ msgstr "Izvorna postavka zaloge" #: build/models.py:1364 build/serializers.py:192 #: build/templates/build/build_base.html:85 -#: build/templates/build/detail.html:34 common/models.py:1842 +#: build/templates/build/detail.html:34 common/models.py:1849 #: order/models.py:934 order/models.py:1460 order/serializers.py:1206 -#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:223 -#: part/forms.py:40 part/models.py:3359 +#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:256 +#: part/forms.py:40 part/models.py:2919 part/models.py:3437 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 +#: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_base.html:113 #: report/templates/report/inventree_po_report.html:90 #: report/templates/report/inventree_so_report.html:91 @@ -1049,13 +1056,14 @@ msgstr "Izvorna postavka zaloge" #: templates/js/translated/order.js:3201 templates/js/translated/order.js:3521 #: templates/js/translated/order.js:3608 templates/js/translated/order.js:3700 #: templates/js/translated/order.js:3847 templates/js/translated/order.js:4338 -#: templates/js/translated/part.js:1078 templates/js/translated/part.js:2568 +#: templates/js/translated/part.js:805 templates/js/translated/part.js:876 +#: templates/js/translated/part.js:1349 templates/js/translated/part.js:2849 #: templates/js/translated/pricing.js:114 #: templates/js/translated/pricing.js:207 #: templates/js/translated/pricing.js:255 -#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:490 -#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:814 -#: templates/js/translated/stock.js:2674 templates/js/translated/stock.js:2759 +#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:489 +#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:813 +#: templates/js/translated/stock.js:2669 templates/js/translated/stock.js:2754 msgid "Quantity" msgstr "Količina" @@ -1097,8 +1105,8 @@ msgid "Enter quantity for build output" msgstr "" #: build/serializers.py:207 build/serializers.py:683 order/models.py:327 -#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:645 -#: part/serializers.py:1016 stock/models.py:574 stock/models.py:1312 +#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:686 +#: part/serializers.py:1057 stock/models.py:574 stock/models.py:1312 #: stock/serializers.py:294 msgid "Quantity must be greater than zero" msgstr "" @@ -1113,7 +1121,7 @@ msgstr "" #: build/serializers.py:231 order/serializers.py:463 order/serializers.py:1210 #: stock/serializers.py:303 templates/js/translated/order.js:1545 -#: templates/js/translated/stock.js:303 templates/js/translated/stock.js:491 +#: templates/js/translated/stock.js:302 templates/js/translated/stock.js:490 msgid "Serial Numbers" msgstr "" @@ -1146,9 +1154,10 @@ msgstr "" #: templates/js/translated/build.js:1759 templates/js/translated/order.js:1572 #: templates/js/translated/order.js:3514 templates/js/translated/order.js:3619 #: templates/js/translated/order.js:3627 templates/js/translated/order.js:3708 -#: templates/js/translated/part.js:183 templates/js/translated/stock.js:620 -#: templates/js/translated/stock.js:785 templates/js/translated/stock.js:995 -#: templates/js/translated/stock.js:1895 templates/js/translated/stock.js:2566 +#: templates/js/translated/part.js:186 templates/js/translated/part.js:804 +#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 +#: templates/js/translated/stock.js:994 templates/js/translated/stock.js:1890 +#: templates/js/translated/stock.js:2561 msgid "Location" msgstr "" @@ -1162,8 +1171,8 @@ msgstr "" #: stock/templates/stock/item_base.html:421 #: templates/js/translated/barcode.js:237 templates/js/translated/build.js:2630 #: templates/js/translated/order.js:1681 templates/js/translated/order.js:2034 -#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1870 -#: templates/js/translated/stock.js:2643 templates/js/translated/stock.js:2775 +#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:2638 templates/js/translated/stock.js:2770 msgid "Status" msgstr "" @@ -1239,8 +1248,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:595 build/serializers.py:640 part/models.py:3495 -#: part/models.py:3651 +#: build/serializers.py:595 build/serializers.py:640 part/models.py:3573 +#: part/models.py:3729 msgid "BOM Item" msgstr "" @@ -1406,7 +1415,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2670 templates/js/translated/order.js:2051 #: templates/js/translated/order.js:2382 templates/js/translated/order.js:2866 -#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1093 +#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1364 msgid "Target Date" msgstr "" @@ -1484,8 +1493,8 @@ msgstr "" #: stock/templates/stock/item_base.html:168 #: templates/js/translated/build.js:1250 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:1884 -#: templates/js/translated/stock.js:2782 +#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:1879 +#: templates/js/translated/stock.js:2777 #: templates/js/translated/table_filters.js:179 #: templates/js/translated/table_filters.js:270 msgid "Batch" @@ -1617,8 +1626,8 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:86 #: order/templates/order/sales_order_detail.html:140 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:210 -#: part/templates/part/part_sidebar.html:55 stock/templates/stock/item.html:117 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:233 +#: part/templates/part/part_sidebar.html:60 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" msgstr "" @@ -1635,7 +1644,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:316 +#: build/templates/build/index.html:18 part/templates/part/detail.html:339 msgid "New Build Order" msgstr "" @@ -1928,9 +1937,9 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1014 part/admin.py:41 part/models.py:3168 +#: common/models.py:1014 part/admin.py:41 part/models.py:3246 #: report/models.py:158 templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:504 +#: templates/js/translated/table_filters.js:508 msgid "Template" msgstr "" @@ -1938,7 +1947,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:1021 part/admin.py:37 part/admin.py:229 part/models.py:957 +#: common/models.py:1021 part/admin.py:37 part/admin.py:262 part/models.py:958 #: templates/js/translated/bom.js:1595 #: templates/js/translated/table_filters.js:196 #: templates/js/translated/table_filters.js:467 @@ -1949,7 +1958,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1028 part/admin.py:38 part/models.py:963 +#: common/models.py:1028 part/admin.py:38 part/models.py:964 #: templates/js/translated/table_filters.js:475 msgid "Component" msgstr "" @@ -1958,7 +1967,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1035 part/admin.py:39 part/models.py:974 +#: common/models.py:1035 part/admin.py:39 part/models.py:975 msgid "Purchaseable" msgstr "" @@ -1966,7 +1975,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1042 part/admin.py:40 part/models.py:979 +#: common/models.py:1042 part/admin.py:40 part/models.py:980 #: templates/js/translated/table_filters.js:496 msgid "Salable" msgstr "" @@ -1975,10 +1984,10 @@ msgstr "" msgid "Parts are salable by default" msgstr "" -#: common/models.py:1049 part/admin.py:42 part/models.py:969 +#: common/models.py:1049 part/admin.py:42 part/models.py:970 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:120 -#: templates/js/translated/table_filters.js:508 +#: templates/js/translated/table_filters.js:512 msgid "Trackable" msgstr "" @@ -1986,10 +1995,10 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1056 part/admin.py:43 part/models.py:989 +#: common/models.py:1056 part/admin.py:43 part/models.py:990 #: part/templates/part/part_base.html:156 #: templates/js/translated/table_filters.js:42 -#: templates/js/translated/table_filters.js:512 +#: templates/js/translated/table_filters.js:516 msgid "Virtual" msgstr "" @@ -2417,7 +2426,7 @@ msgstr "" msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1461 common/models.py:1803 +#: common/models.py:1461 common/models.py:1810 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -2749,41 +2758,50 @@ msgstr "" msgid "Display part scheduling information" msgstr "" -#: common/models.py:1778 -msgid "Table String Length" +#: common/models.py:1778 part/templates/part/detail.html:61 +#: templates/js/translated/part.js:822 +msgid "Part Stocktake" msgstr "" #: common/models.py:1779 +msgid "Display part stocktake information" +msgstr "" + +#: common/models.py:1785 +msgid "Table String Length" +msgstr "" + +#: common/models.py:1786 msgid "Maximimum length limit for strings displayed in table views" msgstr "" -#: common/models.py:1843 +#: common/models.py:1850 msgid "Price break quantity" msgstr "" -#: common/models.py:1850 company/serializers.py:393 order/models.py:975 -#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1145 +#: common/models.py:1857 company/serializers.py:393 order/models.py:975 +#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1416 #: templates/js/translated/pricing.js:354 msgid "Price" msgstr "" -#: common/models.py:1851 +#: common/models.py:1858 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2011 common/models.py:2189 +#: common/models.py:2018 common/models.py:2196 msgid "Endpoint" msgstr "" -#: common/models.py:2012 +#: common/models.py:2019 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2021 +#: common/models.py:2028 msgid "Name for this webhook" msgstr "" -#: common/models.py:2026 part/admin.py:36 part/models.py:984 +#: common/models.py:2033 part/admin.py:36 part/models.py:985 #: plugin/models.py:100 templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:116 #: templates/js/translated/table_filters.js:336 @@ -2791,131 +2809,133 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:2027 +#: common/models.py:2034 msgid "Is this webhook active" msgstr "" -#: common/models.py:2041 +#: common/models.py:2048 msgid "Token" msgstr "" -#: common/models.py:2042 +#: common/models.py:2049 msgid "Token for access" msgstr "" -#: common/models.py:2049 +#: common/models.py:2056 msgid "Secret" msgstr "" -#: common/models.py:2050 +#: common/models.py:2057 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2156 +#: common/models.py:2163 msgid "Message ID" msgstr "" -#: common/models.py:2157 +#: common/models.py:2164 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2165 +#: common/models.py:2172 msgid "Host" msgstr "" -#: common/models.py:2166 +#: common/models.py:2173 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2173 +#: common/models.py:2180 msgid "Header" msgstr "" -#: common/models.py:2174 +#: common/models.py:2181 msgid "Header of this message" msgstr "" -#: common/models.py:2180 +#: common/models.py:2187 msgid "Body" msgstr "" -#: common/models.py:2181 +#: common/models.py:2188 msgid "Body of this message" msgstr "" -#: common/models.py:2190 +#: common/models.py:2197 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2195 +#: common/models.py:2202 msgid "Worked on" msgstr "" -#: common/models.py:2196 +#: common/models.py:2203 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2355 +#: common/models.py:2362 msgid "Id" msgstr "" -#: common/models.py:2361 templates/js/translated/news.js:35 +#: common/models.py:2368 templates/js/translated/news.js:35 msgid "Title" msgstr "" -#: common/models.py:2371 templates/js/translated/news.js:51 +#: common/models.py:2378 templates/js/translated/news.js:51 msgid "Published" msgstr "" -#: common/models.py:2376 templates/InvenTree/settings/plugin.html:62 +#: common/models.py:2383 templates/InvenTree/settings/plugin.html:62 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/news.js:47 msgid "Author" msgstr "" -#: common/models.py:2381 templates/js/translated/news.js:43 +#: common/models.py:2388 templates/js/translated/news.js:43 msgid "Summary" msgstr "" -#: common/models.py:2386 +#: common/models.py:2393 msgid "Read" msgstr "" -#: common/models.py:2387 +#: common/models.py:2394 msgid "Was this news item read?" msgstr "" -#: common/notifications.py:293 +#: common/notifications.py:294 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:295 +#: common/notifications.py:296 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:301 +#: common/notifications.py:302 msgid "Items Received" msgstr "" -#: common/notifications.py:303 +#: common/notifications.py:304 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:415 +#: common/notifications.py:416 msgid "Error raised by plugin" msgstr "" #: common/views.py:85 order/templates/order/order_wizard/po_upload.html:51 #: order/templates/order/purchase_order_detail.html:25 order/views.py:102 -#: part/views.py:107 templates/patterns/wizard/upload.html:37 +#: part/templates/part/import_wizard/part_upload.html:58 part/views.py:109 +#: templates/patterns/wizard/upload.html:37 msgid "Upload File" msgstr "" #: common/views.py:86 order/templates/order/order_wizard/match_fields.html:52 #: order/views.py:103 #: part/templates/part/import_wizard/ajax_match_fields.html:45 -#: part/views.py:108 templates/patterns/wizard/match_fields.html:51 +#: part/templates/part/import_wizard/match_fields.html:52 part/views.py:110 +#: templates/patterns/wizard/match_fields.html:51 msgid "Match Fields" msgstr "" @@ -2934,7 +2954,9 @@ msgstr "" #: common/views.py:509 order/templates/order/order_wizard/match_fields.html:27 #: order/templates/order/order_wizard/match_parts.html:19 #: order/templates/order/order_wizard/po_upload.html:49 +#: part/templates/part/import_wizard/match_fields.html:27 #: part/templates/part/import_wizard/match_references.html:19 +#: part/templates/part/import_wizard/part_upload.html:56 #: templates/patterns/wizard/match_fields.html:26 #: templates/patterns/wizard/upload.html:35 msgid "Previous Step" @@ -2995,7 +3017,7 @@ msgstr "" msgid "Link to external company information" msgstr "" -#: company/models.py:140 part/models.py:878 +#: company/models.py:140 part/models.py:879 msgid "Image" msgstr "" @@ -3028,8 +3050,8 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:153 company/serializers.py:399 -#: company/templates/company/company_base.html:107 part/models.py:2762 -#: part/serializers.py:154 part/serializers.py:182 stock/serializers.py:182 +#: company/templates/company/company_base.html:107 part/models.py:2780 +#: part/serializers.py:156 part/serializers.py:184 stock/serializers.py:182 #: templates/InvenTree/settings/pricing.html:64 msgid "Currency" msgstr "" @@ -3055,12 +3077,12 @@ msgstr "" #: templates/js/translated/company.js:433 #: templates/js/translated/company.js:534 #: templates/js/translated/company.js:669 -#: templates/js/translated/company.js:957 templates/js/translated/part.js:238 +#: templates/js/translated/company.js:957 templates/js/translated/part.js:241 #: templates/js/translated/table_filters.js:439 msgid "Manufacturer" msgstr "" -#: company/models.py:269 templates/js/translated/part.js:239 +#: company/models.py:269 templates/js/translated/part.js:242 msgid "Select manufacturer" msgstr "" @@ -3070,11 +3092,11 @@ msgstr "" #: templates/js/translated/company.js:533 #: templates/js/translated/company.js:685 #: templates/js/translated/company.js:976 templates/js/translated/order.js:2286 -#: templates/js/translated/part.js:249 templates/js/translated/part.js:1067 +#: templates/js/translated/part.js:252 templates/js/translated/part.js:1338 msgid "MPN" msgstr "" -#: company/models.py:276 templates/js/translated/part.js:250 +#: company/models.py:276 templates/js/translated/part.js:253 msgid "Manufacturer Part Number" msgstr "" @@ -3100,8 +3122,8 @@ msgstr "" #: company/models.py:370 #: report/templates/report/inventree_test_report_base.html:95 #: stock/models.py:2156 templates/js/translated/company.js:582 -#: templates/js/translated/company.js:800 templates/js/translated/part.js:889 -#: templates/js/translated/stock.js:1399 +#: templates/js/translated/company.js:800 templates/js/translated/part.js:1160 +#: templates/js/translated/stock.js:1398 msgid "Value" msgstr "" @@ -3109,10 +3131,10 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:377 part/admin.py:26 part/models.py:951 -#: part/models.py:3128 part/templates/part/part_base.html:286 -#: templates/InvenTree/settings/settings.html:349 -#: templates/js/translated/company.js:806 templates/js/translated/part.js:895 +#: company/models.py:377 part/admin.py:26 part/models.py:952 +#: part/models.py:3206 part/templates/part/part_base.html:286 +#: templates/InvenTree/settings/settings.html:350 +#: templates/js/translated/company.js:806 templates/js/translated/part.js:1166 msgid "Units" msgstr "" @@ -3132,24 +3154,24 @@ msgstr "" #: templates/js/translated/company.js:304 #: templates/js/translated/company.js:437 #: templates/js/translated/company.js:930 templates/js/translated/order.js:2017 -#: templates/js/translated/part.js:219 templates/js/translated/part.js:1035 +#: templates/js/translated/part.js:222 templates/js/translated/part.js:1306 #: templates/js/translated/pricing.js:231 #: templates/js/translated/table_filters.js:443 msgid "Supplier" msgstr "" -#: company/models.py:498 templates/js/translated/part.js:220 +#: company/models.py:498 templates/js/translated/part.js:223 msgid "Select supplier" msgstr "" #: company/models.py:503 company/templates/company/supplier_part.html:146 #: part/bom.py:253 part/bom.py:281 templates/js/translated/company.js:303 -#: templates/js/translated/order.js:2273 templates/js/translated/part.js:230 -#: templates/js/translated/part.js:1053 templates/js/translated/pricing.js:243 +#: templates/js/translated/order.js:2273 templates/js/translated/part.js:233 +#: templates/js/translated/part.js:1324 templates/js/translated/pricing.js:243 msgid "SKU" msgstr "" -#: company/models.py:504 templates/js/translated/part.js:231 +#: company/models.py:504 templates/js/translated/part.js:234 msgid "Supplier stock keeping unit" msgstr "" @@ -3166,24 +3188,25 @@ msgid "Supplier part description" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:181 -#: part/admin.py:225 part/models.py:3381 part/templates/part/upload_bom.html:59 +#: part/admin.py:258 part/models.py:3459 part/templates/part/upload_bom.html:59 +#: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:397 msgid "Note" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "base cost" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:534 company/templates/company/supplier_part.html:167 #: stock/admin.py:101 stock/models.py:682 #: stock/templates/stock/item_base.html:243 -#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2016 +#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2011 msgid "Packaging" msgstr "" @@ -3196,7 +3219,7 @@ msgstr "" #: templates/js/translated/company.js:997 templates/js/translated/order.js:826 #: templates/js/translated/order.js:1253 templates/js/translated/order.js:1508 #: templates/js/translated/order.js:2317 templates/js/translated/order.js:2334 -#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1137 +#: templates/js/translated/part.js:1356 templates/js/translated/part.js:1408 msgid "Pack Quantity" msgstr "" @@ -3204,7 +3227,7 @@ msgstr "" msgid "Unit quantity supplied in a single pack" msgstr "" -#: company/models.py:544 part/models.py:1863 +#: company/models.py:544 part/models.py:1869 msgid "multiple" msgstr "" @@ -3216,8 +3239,8 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:1118 templates/js/translated/build.js:1883 -#: templates/js/translated/build.js:2770 templates/js/translated/part.js:623 -#: templates/js/translated/part.js:626 +#: templates/js/translated/build.js:2770 templates/js/translated/part.js:626 +#: templates/js/translated/part.js:629 #: templates/js/translated/table_filters.js:206 msgid "Available" msgstr "" @@ -3300,7 +3323,7 @@ msgstr "" #: stock/templates/stock/item_base.html:399 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:429 templates/js/translated/order.js:2827 -#: templates/js/translated/stock.js:2607 +#: templates/js/translated/stock.js:2602 #: templates/js/translated/table_filters.js:447 msgid "Customer" msgstr "" @@ -3314,7 +3337,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:206 -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:525 msgid "Remove Image" msgstr "" @@ -3323,19 +3346,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:209 -#: part/templates/part/part_base.html:514 +#: part/templates/part/part_base.html:528 #: templates/InvenTree/settings/user.html:87 #: templates/InvenTree/settings/user.html:149 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:238 -#: part/templates/part/part_base.html:543 +#: part/templates/part/part_base.html:557 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:253 -#: part/templates/part/part_base.html:598 +#: part/templates/part/part_base.html:612 msgid "Download Image" msgstr "" @@ -3351,7 +3374,7 @@ msgstr "" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:357 +#: part/templates/part/detail.html:380 msgid "New Supplier Part" msgstr "" @@ -3380,7 +3403,7 @@ msgstr "" msgid "Create new manufacturer part" msgstr "" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:387 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:410 msgid "New Manufacturer Part" msgstr "" @@ -3394,9 +3417,9 @@ msgstr "" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:35 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:35 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:200 -#: templates/InvenTree/settings/sidebar.html:49 +#: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:293 templates/navbar.html:50 #: users/models.py:42 msgid "Purchase Orders" @@ -3417,9 +3440,9 @@ msgstr "" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:39 +#: part/templates/part/detail.html:130 part/templates/part/part_sidebar.html:39 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:220 -#: templates/InvenTree/settings/sidebar.html:51 +#: templates/InvenTree/settings/sidebar.html:53 #: templates/js/translated/search.js:317 templates/navbar.html:61 #: users/models.py:43 msgid "Sales Orders" @@ -3451,7 +3474,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:221 -#: part/templates/part/detail.html:87 part/templates/part/part_base.html:85 +#: part/templates/part/detail.html:110 part/templates/part/part_base.html:85 msgid "Order part" msgstr "" @@ -3482,28 +3505,28 @@ msgid "Suppliers" msgstr "" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:368 +#: part/templates/part/detail.html:391 msgid "Delete supplier parts" msgstr "" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:369 part/templates/part/detail.html:399 -#: templates/js/translated/forms.js:455 templates/js/translated/helpers.js:38 -#: templates/js/translated/part.js:351 templates/js/translated/stock.js:188 -#: users/models.py:224 +#: part/templates/part/detail.html:392 part/templates/part/detail.html:422 +#: templates/js/translated/forms.js:458 templates/js/translated/helpers.js:38 +#: templates/js/translated/part.js:354 templates/js/translated/stock.js:187 +#: users/models.py:225 msgid "Delete" msgstr "" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:184 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:207 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:189 +#: part/templates/part/detail.html:212 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:62 msgid "New Parameter" @@ -3514,7 +3537,7 @@ msgid "Delete parameters" msgstr "" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:825 +#: part/templates/part/detail.html:865 msgid "Add Parameter" msgstr "" @@ -3538,7 +3561,7 @@ msgstr "" #: company/templates/company/supplier_part.html:24 stock/models.py:665 #: stock/templates/stock/item_base.html:236 #: templates/js/translated/company.js:946 templates/js/translated/order.js:1173 -#: templates/js/translated/stock.js:1974 +#: templates/js/translated/stock.js:1969 msgid "Supplier Part" msgstr "" @@ -3578,7 +3601,7 @@ msgstr "" #: company/templates/company/supplier_part.html:56 #: company/templates/company/supplier_part.html:57 #: company/templates/company/supplier_part.html:222 -#: part/templates/part/detail.html:88 +#: part/templates/part/detail.html:111 msgid "Order Part" msgstr "" @@ -3630,7 +3653,7 @@ msgstr "" #: company/templates/company/supplier_part.html:204 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:198 -#: templates/js/translated/stock.js:467 +#: templates/js/translated/stock.js:466 msgid "New Stock Item" msgstr "" @@ -3662,10 +3685,10 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 -#: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/part.js:777 templates/js/translated/part.js:1378 -#: templates/js/translated/part.js:1534 templates/js/translated/stock.js:994 -#: templates/js/translated/stock.js:1799 templates/navbar.html:31 +#: templates/InvenTree/settings/sidebar.html:47 +#: templates/js/translated/part.js:1048 templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1805 templates/js/translated/stock.js:993 +#: templates/js/translated/stock.js:1794 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3680,7 +3703,7 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:29 #: part/templates/part/part_sidebar.html:30 -#: templates/InvenTree/settings/sidebar.html:35 +#: templates/InvenTree/settings/sidebar.html:37 msgid "Pricing" msgstr "" @@ -3692,7 +3715,7 @@ msgstr "" #: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:155 templates/js/translated/search.js:225 -#: templates/js/translated/stock.js:2484 users/models.py:40 +#: templates/js/translated/stock.js:2479 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3801,9 +3824,9 @@ msgstr "" #: stock/templates/stock/item_base.html:182 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:619 templates/js/translated/order.js:1174 -#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1012 -#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1954 -#: templates/js/translated/stock.js:2588 +#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1283 +#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1949 +#: templates/js/translated/stock.js:2583 msgid "Purchase Order" msgstr "" @@ -3973,7 +3996,7 @@ msgstr "" #: order/models.py:1046 order/templates/order/order_base.html:178 #: templates/js/translated/order.js:1679 templates/js/translated/order.js:2404 -#: templates/js/translated/part.js:1129 templates/js/translated/part.js:1161 +#: templates/js/translated/part.js:1400 templates/js/translated/part.js:1432 #: templates/js/translated/table_filters.js:358 msgid "Received" msgstr "" @@ -3984,7 +4007,7 @@ msgstr "" #: order/models.py:1054 stock/models.py:800 stock/serializers.py:173 #: stock/templates/stock/item_base.html:189 -#: templates/js/translated/stock.js:2005 +#: templates/js/translated/stock.js:2000 msgid "Purchase Price" msgstr "" @@ -4350,18 +4373,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:9 #: part/templates/part/import_wizard/ajax_match_fields.html:9 +#: part/templates/part/import_wizard/match_fields.html:9 #: templates/patterns/wizard/match_fields.html:8 msgid "Missing selections for the following required columns" msgstr "" #: order/templates/order/order_wizard/match_fields.html:20 #: part/templates/part/import_wizard/ajax_match_fields.html:20 +#: part/templates/part/import_wizard/match_fields.html:20 #: templates/patterns/wizard/match_fields.html:19 msgid "Duplicate selections found, see below. Fix them then retry submitting." msgstr "" #: order/templates/order/order_wizard/match_fields.html:29 #: order/templates/order/order_wizard/match_parts.html:21 +#: part/templates/part/import_wizard/match_fields.html:29 #: part/templates/part/import_wizard/match_references.html:21 #: templates/patterns/wizard/match_fields.html:28 msgid "Submit Selections" @@ -4369,18 +4395,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:35 #: part/templates/part/import_wizard/ajax_match_fields.html:28 +#: part/templates/part/import_wizard/match_fields.html:35 #: templates/patterns/wizard/match_fields.html:34 msgid "File Fields" msgstr "" #: order/templates/order/order_wizard/match_fields.html:42 #: part/templates/part/import_wizard/ajax_match_fields.html:35 +#: part/templates/part/import_wizard/match_fields.html:42 #: templates/patterns/wizard/match_fields.html:41 msgid "Remove column" msgstr "" #: order/templates/order/order_wizard/match_fields.html:60 #: part/templates/part/import_wizard/ajax_match_fields.html:53 +#: part/templates/part/import_wizard/match_fields.html:60 #: templates/patterns/wizard/match_fields.html:59 msgid "Duplicate selection" msgstr "" @@ -4389,12 +4418,13 @@ msgstr "" #: order/templates/order/order_wizard/match_parts.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: 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:102 templates/js/translated/build.js:485 #: templates/js/translated/build.js:641 templates/js/translated/build.js:2088 #: templates/js/translated/order.js:1122 templates/js/translated/order.js:1624 -#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:657 -#: templates/js/translated/stock.js:825 +#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:824 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4429,6 +4459,7 @@ msgstr "" #: order/templates/order/order_wizard/po_upload.html:27 #: part/templates/part/import_wizard/ajax_part_upload.html:10 +#: part/templates/part/import_wizard/part_upload.html:26 #: templates/patterns/wizard/upload.html:13 #, python-format msgid "Step %(step)s of %(count)s" @@ -4567,12 +4598,12 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:19 part/admin.py:219 part/models.py:3262 stock/admin.py:84 +#: part/admin.py:19 part/admin.py:252 part/models.py:3340 stock/admin.py:84 #: templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/admin.py:20 part/admin.py:221 part/models.py:3266 stock/admin.py:85 +#: part/admin.py:20 part/admin.py:254 part/models.py:3344 stock/admin.py:85 msgid "Part Name" msgstr "" @@ -4580,32 +4611,32 @@ msgstr "" msgid "Part Description" msgstr "" -#: part/admin.py:22 part/models.py:852 part/templates/part/part_base.html:272 -#: templates/js/translated/part.js:763 templates/js/translated/part.js:1491 -#: templates/js/translated/stock.js:1765 +#: part/admin.py:22 part/models.py:853 part/templates/part/part_base.html:272 +#: templates/js/translated/part.js:1034 templates/js/translated/part.js:1762 +#: templates/js/translated/stock.js:1760 msgid "IPN" msgstr "" -#: part/admin.py:23 part/models.py:860 part/templates/part/part_base.html:279 -#: report/models.py:171 templates/js/translated/part.js:768 +#: part/admin.py:23 part/models.py:861 part/templates/part/part_base.html:279 +#: report/models.py:171 templates/js/translated/part.js:1039 msgid "Revision" msgstr "" -#: part/admin.py:24 part/admin.py:145 part/models.py:838 +#: part/admin.py:24 part/admin.py:178 part/models.py:839 #: part/templates/part/category.html:87 part/templates/part/part_base.html:300 msgid "Keywords" msgstr "" -#: part/admin.py:28 part/admin.py:139 +#: part/admin.py:28 part/admin.py:172 #: templates/js/translated/model_renderers.js:338 msgid "Category ID" msgstr "" -#: part/admin.py:29 part/admin.py:140 +#: part/admin.py:29 part/admin.py:173 msgid "Category Name" msgstr "" -#: part/admin.py:30 part/admin.py:144 +#: part/admin.py:30 part/admin.py:177 msgid "Default Location ID" msgstr "" @@ -4613,7 +4644,7 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:33 part/models.py:944 part/templates/part/part_base.html:206 +#: part/admin.py:33 part/models.py:945 part/templates/part/part_base.html:206 msgid "Minimum Stock" msgstr "" @@ -4625,8 +4656,8 @@ msgstr "" #: part/admin.py:48 part/bom.py:145 part/templates/part/part_base.html:213 #: templates/js/translated/bom.js:1156 templates/js/translated/build.js:1935 -#: templates/js/translated/part.js:613 templates/js/translated/part.js:633 -#: templates/js/translated/part.js:1381 templates/js/translated/part.js:1559 +#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 +#: templates/js/translated/part.js:1652 templates/js/translated/part.js:1830 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4642,115 +4673,115 @@ msgid "Allocated" msgstr "" #: part/admin.py:51 part/templates/part/part_base.html:244 -#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 -#: templates/js/translated/part.js:1385 templates/js/translated/part.js:1566 +#: templates/js/translated/part.js:619 templates/js/translated/part.js:639 +#: templates/js/translated/part.js:1656 templates/js/translated/part.js:1837 msgid "Building" msgstr "" -#: part/admin.py:52 part/models.py:2846 +#: part/admin.py:52 part/models.py:2864 msgid "Minimum Cost" msgstr "" -#: part/admin.py:53 part/models.py:2852 +#: part/admin.py:53 part/models.py:2870 msgid "Maximum Cost" msgstr "" -#: part/admin.py:142 part/admin.py:216 stock/admin.py:26 stock/admin.py:98 +#: part/admin.py:175 part/admin.py:249 stock/admin.py:26 stock/admin.py:98 msgid "Parent ID" msgstr "" -#: part/admin.py:143 part/admin.py:218 stock/admin.py:27 +#: part/admin.py:176 part/admin.py:251 stock/admin.py:27 msgid "Parent Name" msgstr "" -#: part/admin.py:146 part/templates/part/category.html:81 +#: part/admin.py:179 part/templates/part/category.html:81 #: part/templates/part/category.html:94 msgid "Category Path" msgstr "" -#: part/admin.py:149 part/models.py:382 part/templates/part/cat_link.html:3 +#: part/admin.py:182 part/models.py:383 part/templates/part/cat_link.html:3 #: part/templates/part/category.html:23 part/templates/part/category.html:134 #: part/templates/part/category.html:154 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:84 -#: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:2065 templates/js/translated/search.js:146 +#: templates/InvenTree/settings/sidebar.html:43 +#: templates/js/translated/part.js:2346 templates/js/translated/search.js:146 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" -#: part/admin.py:211 +#: part/admin.py:244 msgid "BOM Level" msgstr "" -#: part/admin.py:213 +#: part/admin.py:246 msgid "BOM Item ID" msgstr "" -#: part/admin.py:217 +#: part/admin.py:250 msgid "Parent IPN" msgstr "" -#: part/admin.py:220 part/models.py:3270 +#: part/admin.py:253 part/models.py:3348 msgid "Part IPN" msgstr "" -#: part/admin.py:226 templates/js/translated/pricing.js:91 +#: part/admin.py:259 templates/js/translated/pricing.js:91 #: templates/js/translated/pricing.js:732 msgid "Minimum Price" msgstr "" -#: part/admin.py:227 templates/js/translated/pricing.js:86 +#: part/admin.py:260 templates/js/translated/pricing.js:86 #: templates/js/translated/pricing.js:740 msgid "Maximum Price" msgstr "" -#: part/api.py:536 +#: part/api.py:538 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:556 +#: part/api.py:558 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:574 +#: part/api.py:576 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:660 +#: part/api.py:662 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:818 +#: part/api.py:820 msgid "Valid" msgstr "" -#: part/api.py:819 +#: part/api.py:821 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:825 +#: part/api.py:827 msgid "This option must be selected" msgstr "" -#: part/api.py:1265 +#: part/api.py:1281 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1269 +#: part/api.py:1285 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1284 +#: part/api.py:1300 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1315 part/api.py:1319 part/api.py:1334 part/api.py:1338 +#: part/api.py:1331 part/api.py:1335 part/api.py:1350 part/api.py:1354 msgid "This field is required" msgstr "" -#: part/bom.py:142 part/models.py:116 part/models.py:887 -#: part/templates/part/category.html:109 part/templates/part/part_base.html:360 +#: part/bom.py:142 part/models.py:116 part/models.py:888 +#: part/templates/part/category.html:109 part/templates/part/part_base.html:374 msgid "Default Location" msgstr "" @@ -4801,7 +4832,7 @@ msgstr "" msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:159 part/models.py:3211 part/templates/part/category.html:16 +#: part/models.py:159 part/models.py:3289 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -4812,423 +4843,459 @@ msgstr "" msgid "Part Categories" msgstr "" -#: part/models.py:468 +#: part/models.py:469 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:538 part/models.py:550 +#: part/models.py:539 part/models.py:551 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:640 +#: part/models.py:641 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:771 +#: part/models.py:772 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:776 +#: part/models.py:777 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:790 +#: part/models.py:791 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:808 part/models.py:3267 +#: part/models.py:809 part/models.py:3345 msgid "Part name" msgstr "" -#: part/models.py:815 +#: part/models.py:816 msgid "Is Template" msgstr "" -#: part/models.py:816 +#: part/models.py:817 msgid "Is this part a template part?" msgstr "" -#: part/models.py:826 +#: part/models.py:827 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:827 +#: part/models.py:828 msgid "Variant Of" msgstr "" -#: part/models.py:833 +#: part/models.py:834 msgid "Part description" msgstr "" -#: part/models.py:839 +#: part/models.py:840 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:846 part/models.py:2966 part/models.py:3210 +#: part/models.py:847 part/models.py:3044 part/models.py:3288 #: part/templates/part/part_base.html:263 -#: templates/InvenTree/settings/settings.html:229 +#: templates/InvenTree/settings/settings.html:230 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1513 templates/js/translated/part.js:1770 +#: templates/js/translated/part.js:1784 templates/js/translated/part.js:2051 msgid "Category" msgstr "" -#: part/models.py:847 +#: part/models.py:848 msgid "Part category" msgstr "" -#: part/models.py:853 +#: part/models.py:854 msgid "Internal Part Number" msgstr "" -#: part/models.py:859 +#: part/models.py:860 msgid "Part revision or version number" msgstr "" -#: part/models.py:885 +#: part/models.py:886 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:930 part/templates/part/part_base.html:369 +#: part/models.py:931 part/templates/part/part_base.html:383 msgid "Default Supplier" msgstr "" -#: part/models.py:931 +#: part/models.py:932 msgid "Default supplier part" msgstr "" -#: part/models.py:938 +#: part/models.py:939 msgid "Default Expiry" msgstr "" -#: part/models.py:939 +#: part/models.py:940 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:945 +#: part/models.py:946 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:952 +#: part/models.py:953 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:958 +#: part/models.py:959 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:964 +#: part/models.py:965 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:970 +#: part/models.py:971 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:975 +#: part/models.py:976 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:980 +#: part/models.py:981 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:985 +#: part/models.py:986 msgid "Is this part active?" msgstr "" -#: part/models.py:990 +#: part/models.py:991 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:992 +#: part/models.py:993 msgid "Part notes" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "BOM checksum" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:997 +#: part/models.py:998 msgid "BOM checked by" msgstr "" -#: part/models.py:999 +#: part/models.py:1000 msgid "BOM checked date" msgstr "" -#: part/models.py:1003 +#: part/models.py:1004 msgid "Creation User" msgstr "" -#: part/models.py:1863 +#: part/models.py:1010 part/templates/part/part_base.html:345 +#: stock/templates/stock/item_base.html:445 +#: templates/js/translated/part.js:1901 +msgid "Last Stocktake" +msgstr "" + +#: part/models.py:1869 msgid "Sell multiple" msgstr "" -#: part/models.py:2763 +#: part/models.py:2781 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:2768 +#: part/models.py:2786 templates/js/translated/part.js:806 msgid "Updated" msgstr "" -#: part/models.py:2769 +#: part/models.py:2787 msgid "Timestamp of last pricing update" msgstr "" -#: part/models.py:2786 +#: part/models.py:2804 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:2787 +#: part/models.py:2805 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:2792 +#: part/models.py:2810 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:2793 +#: part/models.py:2811 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:2798 +#: part/models.py:2816 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:2799 +#: part/models.py:2817 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:2804 +#: part/models.py:2822 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:2805 +#: part/models.py:2823 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:2810 +#: part/models.py:2828 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:2811 +#: part/models.py:2829 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:2816 +#: part/models.py:2834 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:2817 +#: part/models.py:2835 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:2822 +#: part/models.py:2840 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:2823 +#: part/models.py:2841 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:2828 +#: part/models.py:2846 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:2829 +#: part/models.py:2847 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:2834 +#: part/models.py:2852 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:2835 +#: part/models.py:2853 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:2840 +#: part/models.py:2858 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:2841 +#: part/models.py:2859 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:2847 +#: part/models.py:2865 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:2853 +#: part/models.py:2871 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:2858 +#: part/models.py:2876 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:2859 +#: part/models.py:2877 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:2864 +#: part/models.py:2882 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:2865 +#: part/models.py:2883 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:2870 +#: part/models.py:2888 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:2871 +#: part/models.py:2889 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:2876 +#: part/models.py:2894 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:2877 +#: part/models.py:2895 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3013 +#: part/models.py:2913 +msgid "Part for stocktake" +msgstr "" + +#: part/models.py:2920 +msgid "Total available stock at time of stocktake" +msgstr "" + +#: part/models.py:2924 part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:63 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:2043 templates/js/translated/part.js:887 +#: templates/js/translated/pricing.js:537 +#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2511 +msgid "Date" +msgstr "" + +#: part/models.py:2925 +msgid "Date stocktake was performed" +msgstr "" + +#: part/models.py:2933 +msgid "Additional notes" +msgstr "" + +#: part/models.py:2941 +msgid "User who performed this stocktake" +msgstr "" + +#: part/models.py:3091 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3030 +#: part/models.py:3108 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:3050 templates/js/translated/part.js:2116 -#: templates/js/translated/stock.js:1379 +#: part/models.py:3128 templates/js/translated/part.js:2397 +#: templates/js/translated/stock.js:1378 msgid "Test Name" msgstr "" -#: part/models.py:3051 +#: part/models.py:3129 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3056 +#: part/models.py:3134 msgid "Test Description" msgstr "" -#: part/models.py:3057 +#: part/models.py:3135 msgid "Enter description for this test" msgstr "" -#: part/models.py:3062 templates/js/translated/part.js:2125 +#: part/models.py:3140 templates/js/translated/part.js:2406 #: templates/js/translated/table_filters.js:322 msgid "Required" msgstr "" -#: part/models.py:3063 +#: part/models.py:3141 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3068 templates/js/translated/part.js:2133 +#: part/models.py:3146 templates/js/translated/part.js:2414 msgid "Requires Value" msgstr "" -#: part/models.py:3069 +#: part/models.py:3147 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3074 templates/js/translated/part.js:2140 +#: part/models.py:3152 templates/js/translated/part.js:2421 msgid "Requires Attachment" msgstr "" -#: part/models.py:3075 +#: part/models.py:3153 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3116 +#: part/models.py:3194 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3124 +#: part/models.py:3202 msgid "Parameter Name" msgstr "" -#: part/models.py:3128 +#: part/models.py:3206 msgid "Parameter Units" msgstr "" -#: part/models.py:3133 +#: part/models.py:3211 msgid "Parameter description" msgstr "" -#: part/models.py:3166 +#: part/models.py:3244 msgid "Parent Part" msgstr "" -#: part/models.py:3168 part/models.py:3216 part/models.py:3217 -#: templates/InvenTree/settings/settings.html:224 +#: part/models.py:3246 part/models.py:3294 part/models.py:3295 +#: templates/InvenTree/settings/settings.html:225 msgid "Parameter Template" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Data" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Parameter Value" msgstr "" -#: part/models.py:3221 templates/InvenTree/settings/settings.html:233 +#: part/models.py:3299 templates/InvenTree/settings/settings.html:234 msgid "Default Value" msgstr "" -#: part/models.py:3222 +#: part/models.py:3300 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3259 +#: part/models.py:3337 msgid "Part ID or part name" msgstr "" -#: part/models.py:3263 +#: part/models.py:3341 msgid "Unique part ID value" msgstr "" -#: part/models.py:3271 +#: part/models.py:3349 msgid "Part IPN value" msgstr "" -#: part/models.py:3274 +#: part/models.py:3352 msgid "Level" msgstr "" -#: part/models.py:3275 +#: part/models.py:3353 msgid "BOM level" msgstr "" -#: part/models.py:3344 +#: part/models.py:3422 msgid "Select parent part" msgstr "" -#: part/models.py:3352 +#: part/models.py:3430 msgid "Sub part" msgstr "" -#: part/models.py:3353 +#: part/models.py:3431 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:3359 +#: part/models.py:3437 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:3363 part/templates/part/upload_bom.html:58 +#: part/models.py:3441 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:933 templates/js/translated/bom.js:986 #: templates/js/translated/build.js:1868 #: templates/js/translated/table_filters.js:84 @@ -5236,189 +5303,189 @@ msgstr "" msgid "Optional" msgstr "" -#: part/models.py:3364 +#: part/models.py:3442 msgid "This BOM item is optional" msgstr "" -#: part/models.py:3369 templates/js/translated/bom.js:929 +#: part/models.py:3447 templates/js/translated/bom.js:929 #: templates/js/translated/bom.js:995 templates/js/translated/build.js:1859 #: templates/js/translated/table_filters.js:88 msgid "Consumable" msgstr "" -#: part/models.py:3370 +#: part/models.py:3448 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:3374 part/templates/part/upload_bom.html:55 +#: part/models.py:3452 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:3375 +#: part/models.py:3453 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:3378 +#: part/models.py:3456 msgid "BOM item reference" msgstr "" -#: part/models.py:3381 +#: part/models.py:3459 msgid "BOM item notes" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "Checksum" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "BOM line checksum" msgstr "" -#: part/models.py:3387 part/templates/part/upload_bom.html:57 +#: part/models.py:3465 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1012 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:108 msgid "Inherited" msgstr "" -#: part/models.py:3388 +#: part/models.py:3466 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:3393 part/templates/part/upload_bom.html:56 +#: part/models.py:3471 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1004 msgid "Allow Variants" msgstr "" -#: part/models.py:3394 +#: part/models.py:3472 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:3480 stock/models.py:558 +#: part/models.py:3558 stock/models.py:558 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:3489 part/models.py:3491 +#: part/models.py:3567 part/models.py:3569 msgid "Sub part must be specified" msgstr "" -#: part/models.py:3618 +#: part/models.py:3696 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:3639 +#: part/models.py:3717 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:3652 +#: part/models.py:3730 msgid "Parent BOM item" msgstr "" -#: part/models.py:3660 +#: part/models.py:3738 msgid "Substitute part" msgstr "" -#: part/models.py:3675 +#: part/models.py:3753 msgid "Part 1" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Part 2" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Select Related Part" msgstr "" -#: part/models.py:3697 +#: part/models.py:3775 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:3701 +#: part/models.py:3779 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:155 part/serializers.py:183 stock/serializers.py:183 +#: part/serializers.py:157 part/serializers.py:185 stock/serializers.py:183 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:543 +#: part/serializers.py:584 msgid "Update" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:585 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:854 +#: part/serializers.py:895 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:862 +#: part/serializers.py:903 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:863 +#: part/serializers.py:904 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:868 +#: part/serializers.py:909 msgid "Include Inherited" msgstr "" -#: part/serializers.py:869 +#: part/serializers.py:910 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:874 +#: part/serializers.py:915 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:875 +#: part/serializers.py:916 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:921 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:881 +#: part/serializers.py:922 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:962 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:922 +#: part/serializers.py:963 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:952 +#: part/serializers.py:993 msgid "No part column specified" msgstr "" -#: part/serializers.py:995 +#: part/serializers.py:1036 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:998 +#: part/serializers.py:1039 msgid "No matching part found" msgstr "" -#: part/serializers.py:1001 +#: part/serializers.py:1042 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1010 +#: part/serializers.py:1051 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1059 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1039 +#: part/serializers.py:1080 msgid "At least one BOM item is required" msgstr "" @@ -5450,7 +5517,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:267 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:290 msgid "BOM actions" msgstr "" @@ -5507,8 +5574,8 @@ msgstr "" msgid "New Part" msgstr "" -#: part/templates/part/category.html:169 part/templates/part/detail.html:366 -#: part/templates/part/detail.html:397 +#: part/templates/part/category.html:169 part/templates/part/detail.html:389 +#: part/templates/part/detail.html:420 msgid "Options" msgstr "" @@ -5556,7 +5623,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:404 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:407 msgid "Duplicate Part" msgstr "" @@ -5593,118 +5660,128 @@ msgstr "" msgid "Refresh" msgstr "" -#: part/templates/part/detail.html:59 +#: part/templates/part/detail.html:65 +msgid "Add stocktake information" +msgstr "" + +#: part/templates/part/detail.html:66 part/templates/part/part_sidebar.html:49 +#: stock/admin.py:107 templates/js/translated/stock.js:1905 +msgid "Stocktake" +msgstr "" + +#: part/templates/part/detail.html:82 msgid "Part Test Templates" msgstr "" -#: part/templates/part/detail.html:64 +#: part/templates/part/detail.html:87 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:144 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:141 +#: part/templates/part/detail.html:164 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:156 +#: part/templates/part/detail.html:179 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:160 +#: part/templates/part/detail.html:183 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:161 +#: part/templates/part/detail.html:184 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:188 +#: part/templates/part/detail.html:211 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:225 part/templates/part/part_sidebar.html:52 +#: part/templates/part/detail.html:248 part/templates/part/part_sidebar.html:57 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:229 part/templates/part/detail.html:230 +#: part/templates/part/detail.html:252 part/templates/part/detail.html:253 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:250 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:273 part/templates/part/part_sidebar.html:17 +#: report/templates/report/inventree_bill_of_materials_report.html:100 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:255 +#: part/templates/part/detail.html:278 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:259 templates/js/translated/bom.js:309 +#: part/templates/part/detail.html:282 templates/js/translated/bom.js:309 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:261 +#: part/templates/part/detail.html:284 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:271 +#: part/templates/part/detail.html:294 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:272 templates/js/translated/part.js:276 +#: part/templates/part/detail.html:295 templates/js/translated/part.js:279 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:273 +#: part/templates/part/detail.html:296 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:278 part/templates/part/detail.html:279 +#: part/templates/part/detail.html:301 part/templates/part/detail.html:302 #: templates/js/translated/bom.js:1268 templates/js/translated/bom.js:1269 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:292 +#: part/templates/part/detail.html:315 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:310 +#: part/templates/part/detail.html:333 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:337 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:360 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:353 +#: part/templates/part/detail.html:376 msgid "Part Suppliers" msgstr "" -#: part/templates/part/detail.html:383 +#: part/templates/part/detail.html:406 msgid "Part Manufacturers" msgstr "" -#: part/templates/part/detail.html:399 +#: part/templates/part/detail.html:422 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:696 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:704 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:796 msgid "Add Test Result Template" msgstr "" #: part/templates/part/import_wizard/ajax_part_upload.html:29 #: part/templates/part/import_wizard/part_upload.html:14 -msgid "Unsuffitient privileges." +msgid "Insufficient privileges." msgstr "" #: part/templates/part/import_wizard/part_upload.html:8 @@ -5715,6 +5792,34 @@ msgstr "" msgid "Import Parts from File" msgstr "" +#: part/templates/part/import_wizard/part_upload.html:31 +msgid "Requirements for part import" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "The part import file must contain the required named columns as provided in the " +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:89 +msgid "Download Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:92 +#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 +#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 +msgid "Format" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:93 +#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 +#: templates/js/translated/order.js:999 +msgid "Select file format" +msgstr "" + #: part/templates/part/part_app_base.html:12 msgid "Part List" msgstr "" @@ -5804,12 +5909,12 @@ msgstr "" #: templates/js/translated/company.js:660 #: templates/js/translated/company.js:921 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:677 templates/js/translated/part.js:755 +#: templates/js/translated/part.js:680 templates/js/translated/part.js:1026 msgid "Inactive" msgstr "" #: part/templates/part/part_base.html:165 -#: part/templates/part/part_base.html:666 +#: part/templates/part/part_base.html:680 msgid "Show Part Details" msgstr "" @@ -5837,38 +5942,38 @@ msgid "Minimum stock level" msgstr "" #: part/templates/part/part_base.html:330 templates/js/translated/bom.js:1032 -#: templates/js/translated/part.js:798 templates/js/translated/part.js:1604 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:1875 #: templates/js/translated/pricing.js:124 #: templates/js/translated/pricing.js:762 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:345 +#: part/templates/part/part_base.html:359 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:349 +#: part/templates/part/part_base.html:363 #: stock/templates/stock/item_base.html:331 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:449 +#: part/templates/part/part_base.html:463 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:495 +#: part/templates/part/part_base.html:509 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:512 +#: part/templates/part/part_base.html:526 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:564 +#: part/templates/part/part_base.html:578 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:660 +#: part/templates/part/part_base.html:674 msgid "Hide Part Details" msgstr "" @@ -5920,15 +6025,6 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" -#: part/templates/part/part_scheduling.html:13 -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:63 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:2043 templates/js/translated/pricing.js:537 -#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2516 -msgid "Date" -msgstr "" - #: part/templates/part/part_scheduling.html:14 msgid "Scheduled Quantity" msgstr "" @@ -5941,7 +6037,7 @@ msgstr "" msgid "Scheduling" msgstr "" -#: part/templates/part/part_sidebar.html:48 +#: part/templates/part/part_sidebar.html:53 msgid "Test Templates" msgstr "" @@ -5960,7 +6056,7 @@ msgstr "" #: part/templates/part/prices.html:25 stock/admin.py:106 #: stock/templates/stock/item_base.html:440 #: templates/js/translated/company.js:1039 -#: templates/js/translated/stock.js:1940 +#: templates/js/translated/stock.js:1935 msgid "Last Updated" msgstr "" @@ -6023,8 +6119,8 @@ msgstr "" msgid "Add Sell Price Break" msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:639 -#: templates/js/translated/part.js:1373 templates/js/translated/part.js:1375 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:1644 templates/js/translated/part.js:1646 msgid "No Stock" msgstr "" @@ -6087,27 +6183,32 @@ msgstr "" msgid "{title} v{version}" msgstr "" -#: part/views.py:109 +#: part/views.py:111 msgid "Match References" msgstr "" -#: part/views.py:354 +#: part/views.py:239 +#, python-brace-format +msgid "Can't import part {name} because there is no category assigned" +msgstr "" + +#: part/views.py:378 msgid "Part QR Code" msgstr "" -#: part/views.py:372 +#: part/views.py:396 msgid "Select Part Image" msgstr "" -#: part/views.py:398 +#: part/views.py:422 msgid "Updated part image" msgstr "" -#: part/views.py:401 +#: part/views.py:425 msgid "Part image not found" msgstr "" -#: part/views.py:493 +#: part/views.py:517 msgid "Part Pricing" msgstr "" @@ -6156,28 +6257,48 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:29 -#: plugin/builtin/integration/core_notifications.py:31 +#: plugin/builtin/integration/core_notifications.py:33 msgid "InvenTree contributors" msgstr "" -#: plugin/builtin/integration/core_notifications.py:30 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:32 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notificaton methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:37 -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:80 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:38 -#: plugin/builtin/integration/core_notifications.py:57 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:81 msgid "Allow sending of emails for event notifications" msgstr "" +#: plugin/builtin/integration/core_notifications.py:45 +msgid "Enable slack notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:46 +msgid "Allow sending of slack channel messages for event notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:51 +msgid "Slack incoming webhook url" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:52 +msgid "URL that is used to send messages to a slack channel" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:162 +msgid "Open link" +msgstr "" + #: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" @@ -6409,6 +6530,10 @@ msgstr "" msgid "Asset file description" msgstr "" +#: report/templates/report/inventree_bill_of_materials_report.html:133 +msgid "Materials needed" +msgstr "" + #: report/templates/report/inventree_build_order_base.html:146 msgid "Required For" msgstr "" @@ -6427,7 +6552,7 @@ msgstr "" #: templates/js/translated/build.js:1244 templates/js/translated/build.js:1745 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:121 templates/js/translated/order.js:3611 -#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:522 +#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:521 msgid "Serial Number" msgstr "" @@ -6459,8 +6584,9 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: stock/admin.py:87 templates/js/translated/stock.js:642 -#: templates/js/translated/stock.js:812 templates/js/translated/stock.js:2765 +#: stock/admin.py:87 templates/js/translated/part.js:749 +#: templates/js/translated/stock.js:641 templates/js/translated/stock.js:811 +#: templates/js/translated/stock.js:2760 msgid "Serial" msgstr "" @@ -6515,13 +6641,9 @@ msgstr "" msgid "Purchase Order ID" msgstr "" -#: stock/admin.py:107 templates/js/translated/stock.js:1910 -msgid "Stocktake" -msgstr "" - #: stock/admin.py:108 stock/models.py:764 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/stock.js:1924 +#: templates/js/translated/stock.js:1919 msgid "Expiry Date" msgstr "" @@ -6936,7 +7058,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2912 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2907 msgid "Install Stock Item" msgstr "" @@ -6944,7 +7066,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1561 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1560 msgid "Add Test Result" msgstr "" @@ -7117,10 +7239,6 @@ msgstr "" msgid "Stale" msgstr "" -#: stock/templates/stock/item_base.html:445 -msgid "Last Stocktake" -msgstr "" - #: stock/templates/stock/item_base.html:449 msgid "No stocktake performed" msgstr "" @@ -7394,7 +7512,8 @@ msgstr "" #: templates/InvenTree/notifications/notifications.html:10 #: templates/InvenTree/notifications/sidebar.html:5 -#: templates/InvenTree/settings/sidebar.html:17 templates/notifications.html:5 +#: templates/InvenTree/settings/sidebar.html:17 +#: templates/InvenTree/settings/sidebar.html:35 templates/notifications.html:5 msgid "Notifications" msgstr "" @@ -7475,6 +7594,14 @@ msgstr "" msgid "Open in new tab" msgstr "" +#: templates/InvenTree/settings/notifications.html:9 +msgid "Global Notification Settings" +msgstr "" + +#: templates/InvenTree/settings/notifications.html:18 +msgid "Slug" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -7492,7 +7619,7 @@ msgid "Part Parameter Templates" msgstr "" #: templates/InvenTree/settings/plugin.html:10 -#: templates/InvenTree/settings/sidebar.html:55 +#: templates/InvenTree/settings/sidebar.html:57 msgid "Plugin Settings" msgstr "" @@ -7501,7 +7628,7 @@ msgid "Changing the settings below require you to immediately restart the server msgstr "" #: templates/InvenTree/settings/plugin.html:38 -#: templates/InvenTree/settings/sidebar.html:57 +#: templates/InvenTree/settings/sidebar.html:59 msgid "Plugins" msgstr "" @@ -7669,67 +7796,67 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:117 +#: templates/InvenTree/settings/settings.html:118 msgid "Edit Plugin Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:119 +#: templates/InvenTree/settings/settings.html:120 msgid "Edit Notification Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:122 +#: templates/InvenTree/settings/settings.html:123 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:124 +#: templates/InvenTree/settings/settings.html:125 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:214 +#: templates/InvenTree/settings/settings.html:215 msgid "No category parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:236 -#: templates/InvenTree/settings/settings.html:361 -msgid "Edit Template" -msgstr "" - #: templates/InvenTree/settings/settings.html:237 #: templates/InvenTree/settings/settings.html:362 +msgid "Edit Template" +msgstr "" + +#: templates/InvenTree/settings/settings.html:238 +#: templates/InvenTree/settings/settings.html:363 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:277 +#: templates/InvenTree/settings/settings.html:278 msgid "Create Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:322 +#: templates/InvenTree/settings/settings.html:323 msgid "Delete Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:334 +#: templates/InvenTree/settings/settings.html:335 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:338 +#: templates/InvenTree/settings/settings.html:339 #: templates/js/translated/news.js:29 #: templates/js/translated/notification.js:36 msgid "ID" msgstr "" -#: templates/InvenTree/settings/settings.html:380 +#: templates/InvenTree/settings/settings.html:381 msgid "Create Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:399 +#: templates/InvenTree/settings/settings.html:400 msgid "Edit Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:413 +#: templates/InvenTree/settings/settings.html:414 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/InvenTree/settings/settings.html:421 +#: templates/InvenTree/settings/settings.html:422 msgid "Delete Part Parameter Template" msgstr "" @@ -7758,12 +7885,12 @@ msgid "Search Settings" msgstr "" #: templates/InvenTree/settings/sidebar.html:19 -#: templates/InvenTree/settings/sidebar.html:37 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Label Printing" msgstr "" #: templates/InvenTree/settings/sidebar.html:21 -#: templates/InvenTree/settings/sidebar.html:39 +#: templates/InvenTree/settings/sidebar.html:41 msgid "Reporting" msgstr "" @@ -7775,7 +7902,7 @@ msgstr "" msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:43 +#: templates/InvenTree/settings/sidebar.html:45 msgid "Categories" msgstr "" @@ -7945,64 +8072,64 @@ msgstr "" msgid "Do you really want to remove the selected email address?" msgstr "" -#: templates/InvenTree/settings/user_display.html:28 +#: templates/InvenTree/settings/user_display.html:29 msgid "Theme Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:38 +#: templates/InvenTree/settings/user_display.html:39 msgid "Select theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:49 +#: templates/InvenTree/settings/user_display.html:50 msgid "Set Theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:57 +#: templates/InvenTree/settings/user_display.html:58 msgid "Language Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:66 +#: templates/InvenTree/settings/user_display.html:67 msgid "Select language" msgstr "" -#: templates/InvenTree/settings/user_display.html:82 +#: templates/InvenTree/settings/user_display.html:83 #, python-format msgid "%(lang_translated)s%% translated" msgstr "" -#: templates/InvenTree/settings/user_display.html:84 +#: templates/InvenTree/settings/user_display.html:85 msgid "No translations available" msgstr "" -#: templates/InvenTree/settings/user_display.html:91 +#: templates/InvenTree/settings/user_display.html:92 msgid "Set Language" msgstr "" -#: templates/InvenTree/settings/user_display.html:94 +#: templates/InvenTree/settings/user_display.html:95 msgid "Some languages are not complete" msgstr "" -#: templates/InvenTree/settings/user_display.html:96 +#: templates/InvenTree/settings/user_display.html:97 msgid "Show only sufficent" msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "and hidden." msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "Show them too" msgstr "" -#: templates/InvenTree/settings/user_display.html:105 +#: templates/InvenTree/settings/user_display.html:106 msgid "Help the translation efforts!" msgstr "" -#: templates/InvenTree/settings/user_display.html:106 +#: templates/InvenTree/settings/user_display.html:107 msgid "Native language translation of the web application is community contributed via crowdin. Contributions are welcomed and encouraged." msgstr "" -#: templates/InvenTree/settings/user_display.html:107 +#: templates/InvenTree/settings/user_display.html:108 msgid "InvenTree Translation Project" msgstr "" @@ -8080,7 +8207,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:646 +#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:649 msgid "Confirm" msgstr "" @@ -8313,7 +8440,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 -#: templates/js/translated/part.js:2445 +#: templates/js/translated/part.js:2726 msgid "Minimum Quantity" msgstr "" @@ -8466,7 +8593,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1089 +#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1088 msgid "Remove stock item" msgstr "" @@ -8548,16 +8675,6 @@ msgstr "" msgid "Download BOM Template" msgstr "" -#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 -#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 -msgid "Format" -msgstr "" - -#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 -#: templates/js/translated/order.js:999 -msgid "Select file format" -msgstr "" - #: templates/js/translated/bom.js:320 msgid "Multi Level BOM" msgstr "" @@ -8688,7 +8805,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:1145 templates/js/translated/build.js:1923 -#: templates/js/translated/part.js:790 templates/js/translated/part.js:1572 +#: templates/js/translated/part.js:1061 templates/js/translated/part.js:1843 msgid "Includes variant stock" msgstr "" @@ -8773,13 +8890,13 @@ msgstr "" msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:317 templates/js/translated/stock.js:95 -#: templates/js/translated/stock.js:237 +#: templates/js/translated/build.js:317 templates/js/translated/stock.js:94 +#: templates/js/translated/stock.js:236 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:319 templates/js/translated/stock.js:97 -#: templates/js/translated/stock.js:239 +#: templates/js/translated/build.js:319 templates/js/translated/stock.js:96 +#: templates/js/translated/stock.js:238 msgid "Latest serial number" msgstr "" @@ -8987,9 +9104,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1466 -#: templates/js/translated/part.js:2003 templates/js/translated/stock.js:1725 -#: templates/js/translated/stock.js:2428 +#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1737 +#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1724 +#: templates/js/translated/stock.js:2423 msgid "Select" msgstr "" @@ -9001,7 +9118,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2695 +#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2690 msgid "No user information" msgstr "" @@ -9074,34 +9191,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:652 -#: templates/js/translated/company.js:913 templates/js/translated/part.js:661 -#: templates/js/translated/part.js:747 +#: templates/js/translated/company.js:913 templates/js/translated/part.js:664 +#: templates/js/translated/part.js:1018 msgid "Template part" msgstr "" #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:917 templates/js/translated/part.js:665 -#: templates/js/translated/part.js:751 +#: templates/js/translated/company.js:917 templates/js/translated/part.js:668 +#: templates/js/translated/part.js:1022 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:784 templates/js/translated/part.js:870 +#: templates/js/translated/company.js:784 templates/js/translated/part.js:1141 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:821 templates/js/translated/part.js:912 +#: templates/js/translated/company.js:821 templates/js/translated/part.js:1183 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:822 templates/js/translated/part.js:913 +#: templates/js/translated/company.js:822 templates/js/translated/part.js:1184 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:841 templates/js/translated/part.js:930 +#: templates/js/translated/company.js:841 templates/js/translated/part.js:1201 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:852 templates/js/translated/part.js:942 +#: templates/js/translated/company.js:852 templates/js/translated/part.js:1213 msgid "Delete Parameter" msgstr "" @@ -9181,61 +9298,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:369 templates/js/translated/forms.js:384 -#: templates/js/translated/forms.js:398 templates/js/translated/forms.js:412 +#: templates/js/translated/forms.js:372 templates/js/translated/forms.js:387 +#: templates/js/translated/forms.js:401 templates/js/translated/forms.js:415 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:371 +#: templates/js/translated/forms.js:374 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:386 +#: templates/js/translated/forms.js:389 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:400 +#: templates/js/translated/forms.js:403 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:414 +#: templates/js/translated/forms.js:417 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:672 +#: templates/js/translated/forms.js:675 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:773 +#: templates/js/translated/forms.js:776 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1266 templates/modals.html:19 +#: templates/js/translated/forms.js:1269 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1703 +#: templates/js/translated/forms.js:1706 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1919 templates/search.html:29 +#: templates/js/translated/forms.js:1922 templates/search.html:29 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2172 +#: templates/js/translated/forms.js:2175 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:2640 +#: templates/js/translated/forms.js:2643 msgid "Select Columns" msgstr "" @@ -9256,7 +9373,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1113 +#: templates/js/translated/stock.js:1112 msgid "Select Stock Items" msgstr "" @@ -9590,7 +9707,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2184 +#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2179 msgid "Stock Status" msgstr "" @@ -9614,7 +9731,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1982 templates/js/translated/part.js:983 +#: templates/js/translated/order.js:1982 templates/js/translated/part.js:1254 msgid "No purchase orders found" msgstr "" @@ -9647,8 +9764,8 @@ msgstr "" msgid "Total" msgstr "" -#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1085 -#: templates/js/translated/part.js:1137 +#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1356 +#: templates/js/translated/part.js:1408 msgid "Total Quantity" msgstr "" @@ -9666,11 +9783,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2388 templates/js/translated/order.js:3900 -#: templates/js/translated/part.js:1121 +#: templates/js/translated/part.js:1392 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1166 +#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1437 msgid "Receive line item" msgstr "" @@ -9791,7 +9908,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3623 templates/js/translated/order.js:3712 -#: templates/js/translated/stock.js:1641 +#: templates/js/translated/stock.js:1640 msgid "Shipped to customer" msgstr "" @@ -9835,334 +9952,358 @@ msgstr "" msgid "No matching lines" msgstr "" -#: templates/js/translated/part.js:52 +#: templates/js/translated/part.js:55 msgid "Part Attributes" msgstr "" -#: templates/js/translated/part.js:56 +#: templates/js/translated/part.js:59 msgid "Part Creation Options" msgstr "" -#: templates/js/translated/part.js:60 +#: templates/js/translated/part.js:63 msgid "Part Duplication Options" msgstr "" -#: templates/js/translated/part.js:64 +#: templates/js/translated/part.js:67 msgid "Supplier Options" msgstr "" -#: templates/js/translated/part.js:78 +#: templates/js/translated/part.js:81 msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:168 +#: templates/js/translated/part.js:171 msgid "Create Initial Stock" msgstr "" -#: templates/js/translated/part.js:169 +#: templates/js/translated/part.js:172 msgid "Create an initial stock item for this part" msgstr "" -#: templates/js/translated/part.js:176 +#: templates/js/translated/part.js:179 msgid "Initial Stock Quantity" msgstr "" -#: templates/js/translated/part.js:177 +#: templates/js/translated/part.js:180 msgid "Specify initial stock quantity for this part" msgstr "" -#: templates/js/translated/part.js:184 +#: templates/js/translated/part.js:187 msgid "Select destination stock location" msgstr "" -#: templates/js/translated/part.js:202 +#: templates/js/translated/part.js:205 msgid "Copy Category Parameters" msgstr "" -#: templates/js/translated/part.js:203 +#: templates/js/translated/part.js:206 msgid "Copy parameter templates from selected part category" msgstr "" -#: templates/js/translated/part.js:211 +#: templates/js/translated/part.js:214 msgid "Add Supplier Data" msgstr "" -#: templates/js/translated/part.js:212 +#: templates/js/translated/part.js:215 msgid "Create initial supplier data for this part" msgstr "" -#: templates/js/translated/part.js:268 +#: templates/js/translated/part.js:271 msgid "Copy Image" msgstr "" -#: templates/js/translated/part.js:269 +#: templates/js/translated/part.js:272 msgid "Copy image from original part" msgstr "" -#: templates/js/translated/part.js:277 +#: templates/js/translated/part.js:280 msgid "Copy bill of materials from original part" msgstr "" -#: templates/js/translated/part.js:284 +#: templates/js/translated/part.js:287 msgid "Copy Parameters" msgstr "" -#: templates/js/translated/part.js:285 +#: templates/js/translated/part.js:288 msgid "Copy parameter data from original part" msgstr "" -#: templates/js/translated/part.js:298 +#: templates/js/translated/part.js:301 msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:313 templates/js/translated/stock.js:122 +#: templates/js/translated/part.js:316 templates/js/translated/stock.js:121 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:329 +#: templates/js/translated/part.js:332 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:342 +#: templates/js/translated/part.js:345 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:347 +#: templates/js/translated/part.js:350 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:359 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:360 +#: templates/js/translated/part.js:363 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:368 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:394 +#: templates/js/translated/part.js:397 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:396 +#: templates/js/translated/part.js:399 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:407 +#: templates/js/translated/part.js:410 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:459 +#: templates/js/translated/part.js:462 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:460 +#: templates/js/translated/part.js:463 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:477 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:476 +#: templates/js/translated/part.js:479 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:477 +#: templates/js/translated/part.js:480 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:478 +#: templates/js/translated/part.js:481 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:485 +#: templates/js/translated/part.js:488 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:521 +#: templates/js/translated/part.js:524 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:523 +#: templates/js/translated/part.js:526 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:531 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:530 +#: templates/js/translated/part.js:533 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:547 +#: templates/js/translated/part.js:550 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:560 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:560 +#: templates/js/translated/part.js:563 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:585 +#: templates/js/translated/part.js:588 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1554 +#: templates/js/translated/part.js:612 templates/js/translated/part.js:1825 #: templates/js/translated/table_filters.js:488 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:622 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:653 templates/js/translated/part.js:739 +#: templates/js/translated/part.js:656 templates/js/translated/part.js:1010 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:657 templates/js/translated/part.js:743 +#: templates/js/translated/part.js:660 templates/js/translated/part.js:1014 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:669 +#: templates/js/translated/part.js:672 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:673 +#: templates/js/translated/part.js:676 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:815 +#: templates/js/translated/part.js:761 +msgid "Stock item has not been checked recently" +msgstr "" + +#: templates/js/translated/part.js:769 +msgid "Update item" +msgstr "" + +#: templates/js/translated/part.js:770 +msgid "Delete item" +msgstr "" + +#: templates/js/translated/part.js:871 +msgid "No stocktake information available" +msgstr "" + +#: templates/js/translated/part.js:910 templates/js/translated/part.js:933 +msgid "Edit Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:914 templates/js/translated/part.js:945 +msgid "Delete Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:1086 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1236 +#: templates/js/translated/part.js:1507 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1260 +#: templates/js/translated/part.js:1531 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1327 templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1598 templates/js/translated/part.js:1936 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1521 +#: templates/js/translated/part.js:1792 msgid "No category" msgstr "" -#: templates/js/translated/part.js:1552 +#: templates/js/translated/part.js:1823 msgid "No stock" msgstr "" -#: templates/js/translated/part.js:1576 +#: templates/js/translated/part.js:1847 msgid "Allocated to build orders" msgstr "" -#: templates/js/translated/part.js:1580 +#: templates/js/translated/part.js:1851 msgid "Allocated to sales orders" msgstr "" -#: templates/js/translated/part.js:1679 templates/js/translated/part.js:1922 -#: templates/js/translated/stock.js:2387 +#: templates/js/translated/part.js:1960 templates/js/translated/part.js:2203 +#: templates/js/translated/stock.js:2382 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1695 +#: templates/js/translated/part.js:1976 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1761 +#: templates/js/translated/part.js:2042 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1766 +#: templates/js/translated/part.js:2047 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1771 +#: templates/js/translated/part.js:2052 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1784 +#: templates/js/translated/part.js:2065 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1942 templates/js/translated/stock.js:2407 +#: templates/js/translated/part.js:2223 templates/js/translated/stock.js:2402 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2022 +#: templates/js/translated/part.js:2303 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2038 +#: templates/js/translated/part.js:2319 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2383 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2153 templates/js/translated/stock.js:1338 +#: templates/js/translated/part.js:2434 templates/js/translated/stock.js:1337 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2154 templates/js/translated/stock.js:1339 -#: templates/js/translated/stock.js:1599 +#: templates/js/translated/part.js:2435 templates/js/translated/stock.js:1338 +#: templates/js/translated/stock.js:1598 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2441 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2182 +#: templates/js/translated/part.js:2463 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2196 +#: templates/js/translated/part.js:2477 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2277 templates/js/translated/part.js:2278 +#: templates/js/translated/part.js:2558 templates/js/translated/part.js:2559 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2280 +#: templates/js/translated/part.js:2561 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:2286 +#: templates/js/translated/part.js:2567 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:2336 +#: templates/js/translated/part.js:2617 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2623 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:2438 +#: templates/js/translated/part.js:2719 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2454 +#: templates/js/translated/part.js:2735 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:2499 +#: templates/js/translated/part.js:2780 msgid "Minimum Stock Level" msgstr "" @@ -10290,388 +10431,388 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:74 +#: templates/js/translated/stock.js:73 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:104 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:114 +#: templates/js/translated/stock.js:113 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:148 +#: templates/js/translated/stock.js:147 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:163 +#: templates/js/translated/stock.js:162 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:177 +#: templates/js/translated/stock.js:176 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:184 +#: templates/js/translated/stock.js:183 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:193 +#: templates/js/translated/stock.js:192 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:197 +#: templates/js/translated/stock.js:196 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:201 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:256 +#: templates/js/translated/stock.js:255 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:298 +#: templates/js/translated/stock.js:297 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:304 +#: templates/js/translated/stock.js:303 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:368 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:389 +#: templates/js/translated/stock.js:388 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:405 +#: templates/js/translated/stock.js:404 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:410 +#: templates/js/translated/stock.js:409 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:431 +#: templates/js/translated/stock.js:430 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:481 +#: templates/js/translated/stock.js:480 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:494 +#: templates/js/translated/stock.js:493 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:519 +#: templates/js/translated/stock.js:518 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:523 templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:522 templates/js/translated/stock.js:523 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:540 +#: templates/js/translated/stock.js:539 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:560 +#: templates/js/translated/stock.js:559 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:568 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:692 +#: templates/js/translated/stock.js:691 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:693 +#: templates/js/translated/stock.js:692 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:770 +#: templates/js/translated/stock.js:769 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:771 +#: templates/js/translated/stock.js:770 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:773 +#: templates/js/translated/stock.js:772 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:774 +#: templates/js/translated/stock.js:773 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:863 +#: templates/js/translated/stock.js:862 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:864 +#: templates/js/translated/stock.js:863 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:958 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:959 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:966 +#: templates/js/translated/stock.js:965 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:967 +#: templates/js/translated/stock.js:966 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:971 +#: templates/js/translated/stock.js:970 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:972 +#: templates/js/translated/stock.js:971 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:976 +#: templates/js/translated/stock.js:975 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:977 users/models.py:220 +#: templates/js/translated/stock.js:976 users/models.py:221 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:981 +#: templates/js/translated/stock.js:980 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1114 +#: templates/js/translated/stock.js:1113 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1141 +#: templates/js/translated/stock.js:1140 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1277 +#: templates/js/translated/stock.js:1276 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1279 +#: templates/js/translated/stock.js:1278 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1284 +#: templates/js/translated/stock.js:1283 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1331 +#: templates/js/translated/stock.js:1330 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1334 +#: templates/js/translated/stock.js:1333 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1360 +#: templates/js/translated/stock.js:1359 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1417 +#: templates/js/translated/stock.js:1416 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1582 +#: templates/js/translated/stock.js:1581 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1604 +#: templates/js/translated/stock.js:1603 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1633 +#: templates/js/translated/stock.js:1632 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1637 +#: templates/js/translated/stock.js:1636 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1645 +#: templates/js/translated/stock.js:1644 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1651 +#: templates/js/translated/stock.js:1650 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1820 +#: templates/js/translated/stock.js:1815 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1825 +#: templates/js/translated/stock.js:1820 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1828 +#: templates/js/translated/stock.js:1823 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1831 +#: templates/js/translated/stock.js:1826 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1833 +#: templates/js/translated/stock.js:1828 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1835 +#: templates/js/translated/stock.js:1830 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1838 +#: templates/js/translated/stock.js:1833 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1837 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1844 +#: templates/js/translated/stock.js:1839 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1846 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1853 +#: templates/js/translated/stock.js:1848 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1855 +#: templates/js/translated/stock.js:1850 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1859 +#: templates/js/translated/stock.js:1854 #: templates/js/translated/table_filters.js:216 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1989 +#: templates/js/translated/stock.js:1984 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2026 +#: templates/js/translated/stock.js:2021 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2199 +#: templates/js/translated/stock.js:2194 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2213 +#: templates/js/translated/stock.js:2208 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2214 +#: templates/js/translated/stock.js:2209 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2446 +#: templates/js/translated/stock.js:2441 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2536 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2557 +#: templates/js/translated/stock.js:2552 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2579 +#: templates/js/translated/stock.js:2574 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2598 +#: templates/js/translated/stock.js:2593 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2617 +#: templates/js/translated/stock.js:2612 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2635 +#: templates/js/translated/stock.js:2630 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2658 +#: templates/js/translated/stock.js:2653 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2666 +#: templates/js/translated/stock.js:2661 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2737 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2793 templates/js/translated/stock.js:2829 +#: templates/js/translated/stock.js:2788 templates/js/translated/stock.js:2824 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2845 +#: templates/js/translated/stock.js:2840 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2866 +#: templates/js/translated/stock.js:2861 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2867 +#: templates/js/translated/stock.js:2862 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2869 +#: templates/js/translated/stock.js:2864 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2870 +#: templates/js/translated/stock.js:2865 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:2866 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2872 +#: templates/js/translated/stock.js:2867 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2885 +#: templates/js/translated/stock.js:2880 msgid "Select part to install" msgstr "" @@ -10696,7 +10837,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:92 -#: templates/js/translated/table_filters.js:516 +#: templates/js/translated/table_filters.js:520 msgid "Has Pricing" msgstr "" @@ -10912,6 +11053,10 @@ msgstr "" msgid "Purchasable" msgstr "" +#: templates/js/translated/table_filters.js:504 +msgid "Has stocktake entries" +msgstr "" + #: templates/js/translated/tables.js:70 msgid "Display calendar view" msgstr "" @@ -11206,35 +11351,35 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:207 +#: users/models.py:208 msgid "Permission set" msgstr "" -#: users/models.py:215 +#: users/models.py:216 msgid "Group" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "View" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "Permission to view items" msgstr "" -#: users/models.py:220 +#: users/models.py:221 msgid "Permission to add items" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Change" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Permissions to edit items" msgstr "" -#: users/models.py:224 +#: users/models.py:225 msgid "Permission to delete items" msgstr "" diff --git a/InvenTree/locale/sv/LC_MESSAGES/django.po b/InvenTree/locale/sv/LC_MESSAGES/django.po index efd96369de..35e33712f2 100644 --- a/InvenTree/locale/sv/LC_MESSAGES/django.po +++ b/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: 2022-12-30 20:46+0000\n" -"PO-Revision-Date: 2022-12-31 11:29\n" +"POT-Creation-Date: 2023-01-01 11:05+0000\n" +"PO-Revision-Date: 2023-01-01 11:26\n" "Last-Translator: \n" "Language-Team: Swedish\n" "Language: sv_SE\n" @@ -34,7 +34,7 @@ msgstr "Ange datum" #: company/templates/company/sidebar.html:25 order/models.py:943 #: order/templates/order/po_sidebar.html:11 #: order/templates/order/so_sidebar.html:17 part/admin.py:27 -#: part/templates/part/part_sidebar.html:57 +#: part/models.py:2932 part/templates/part/part_sidebar.html:62 #: report/templates/report/inventree_build_order_base.html:172 #: stock/admin.py:103 stock/models.py:2061 stock/models.py:2169 #: stock/serializers.py:321 stock/serializers.py:454 stock/serializers.py:535 @@ -44,8 +44,8 @@ msgstr "Ange datum" #: templates/js/translated/company.js:1023 #: templates/js/translated/order.js:2435 templates/js/translated/order.js:2569 #: templates/js/translated/order.js:3067 templates/js/translated/order.js:4004 -#: templates/js/translated/order.js:4385 templates/js/translated/stock.js:1413 -#: templates/js/translated/stock.js:2020 +#: templates/js/translated/order.js:4385 templates/js/translated/part.js:882 +#: templates/js/translated/stock.js:1412 templates/js/translated/stock.js:2015 msgid "Notes" msgstr "Anteeckningar" @@ -204,18 +204,18 @@ msgstr "Bilaga" msgid "Select file to attach" msgstr "Välj fil att bifoga" -#: InvenTree/models.py:412 common/models.py:2366 company/models.py:129 +#: InvenTree/models.py:412 common/models.py:2373 company/models.py:129 #: company/models.py:281 company/models.py:516 order/models.py:85 -#: order/models.py:1282 part/admin.py:25 part/models.py:865 +#: order/models.py:1282 part/admin.py:25 part/models.py:866 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: stock/admin.py:102 templates/js/translated/company.js:692 #: templates/js/translated/company.js:1012 -#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1615 +#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1886 msgid "Link" msgstr "Länk" -#: InvenTree/models.py:413 build/models.py:290 part/models.py:866 +#: InvenTree/models.py:413 build/models.py:290 part/models.py:867 #: stock/models.py:716 msgid "Link to external URL" msgstr "Länk till extern URL" @@ -229,12 +229,13 @@ msgstr "Kommentar" msgid "File comment" msgstr "Fil kommentar" -#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1810 -#: common/models.py:1811 common/models.py:2034 common/models.py:2035 -#: common/models.py:2296 common/models.py:2297 part/models.py:2948 -#: part/models.py:2968 plugin/models.py:264 plugin/models.py:265 +#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1817 +#: common/models.py:1818 common/models.py:2041 common/models.py:2042 +#: common/models.py:2303 common/models.py:2304 part/models.py:2940 +#: part/models.py:3026 part/models.py:3046 plugin/models.py:264 +#: plugin/models.py:265 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2689 +#: templates/js/translated/stock.js:2684 msgid "User" msgstr "Användare" @@ -271,19 +272,20 @@ msgstr "Fel vid namnbyte av fil" msgid "Invalid choice" msgstr "Ogiltigt val" -#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2020 -#: company/models.py:363 label/models.py:101 part/models.py:809 -#: part/models.py:3123 plugin/models.py:94 report/models.py:152 +#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2027 +#: company/models.py:363 label/models.py:101 part/models.py:810 +#: part/models.py:3201 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 +#: templates/InvenTree/settings/notifications.html:17 #: templates/InvenTree/settings/plugin.html:60 #: templates/InvenTree/settings/plugin.html:104 #: templates/InvenTree/settings/plugin_settings.html:23 -#: templates/InvenTree/settings/settings.html:344 +#: templates/InvenTree/settings/settings.html:345 #: templates/js/translated/company.js:581 #: templates/js/translated/company.js:794 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:711 templates/js/translated/part.js:880 -#: templates/js/translated/part.js:2010 templates/js/translated/stock.js:2434 +#: templates/js/translated/part.js:982 templates/js/translated/part.js:1151 +#: templates/js/translated/part.js:2291 templates/js/translated/stock.js:2429 msgid "Name" msgstr "Namn" @@ -292,24 +294,25 @@ msgstr "Namn" #: company/models.py:522 company/templates/company/company_base.html:72 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:108 label/models.py:108 -#: order/models.py:83 part/admin.py:141 part/admin.py:222 part/models.py:832 -#: part/models.py:3132 part/templates/part/category.html:75 +#: order/models.py:83 part/admin.py:174 part/admin.py:255 part/models.py:833 +#: part/models.py:3210 part/templates/part/category.html:75 #: part/templates/part/part_base.html:172 #: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/admin.py:25 stock/templates/stock/location.html:117 +#: templates/InvenTree/settings/notifications.html:19 #: templates/InvenTree/settings/plugin_settings.html:28 -#: templates/InvenTree/settings/settings.html:355 +#: templates/InvenTree/settings/settings.html:356 #: templates/js/translated/bom.js:592 templates/js/translated/bom.js:895 #: templates/js/translated/build.js:2596 templates/js/translated/company.js:445 #: templates/js/translated/company.js:703 #: templates/js/translated/company.js:987 templates/js/translated/order.js:2030 #: templates/js/translated/order.js:2267 templates/js/translated/order.js:2845 -#: templates/js/translated/part.js:773 templates/js/translated/part.js:1223 -#: templates/js/translated/part.js:1497 templates/js/translated/part.js:2046 -#: templates/js/translated/part.js:2121 templates/js/translated/stock.js:1787 -#: templates/js/translated/stock.js:2466 templates/js/translated/stock.js:2526 +#: templates/js/translated/part.js:1044 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1768 templates/js/translated/part.js:2327 +#: templates/js/translated/part.js:2402 templates/js/translated/stock.js:1782 +#: templates/js/translated/stock.js:2461 templates/js/translated/stock.js:2521 msgid "Description" msgstr "Beskrivning" @@ -322,7 +325,7 @@ msgid "parent" msgstr "överordnad" #: InvenTree/models.py:580 InvenTree/models.py:581 -#: templates/js/translated/part.js:2055 templates/js/translated/stock.js:2475 +#: templates/js/translated/part.js:2336 templates/js/translated/stock.js:2470 msgid "Path" msgstr "Sökväg" @@ -354,7 +357,7 @@ msgstr "Serverfel" msgid "An error has been logged by the server." msgstr "Ett fel har loggats av servern." -#: InvenTree/serializers.py:58 part/models.py:3468 +#: InvenTree/serializers.py:58 part/models.py:3546 msgid "Must be a valid number" msgstr "Måste vara ett giltigt nummer" @@ -421,107 +424,107 @@ 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/settings.py:639 +#: InvenTree/settings.py:642 msgid "Czech" msgstr "Tjeckiska" -#: InvenTree/settings.py:640 +#: InvenTree/settings.py:643 msgid "Danish" msgstr "" -#: InvenTree/settings.py:641 +#: InvenTree/settings.py:644 msgid "German" msgstr "Tyska" -#: InvenTree/settings.py:642 +#: InvenTree/settings.py:645 msgid "Greek" msgstr "Grekiska" -#: InvenTree/settings.py:643 +#: InvenTree/settings.py:646 msgid "English" msgstr "Engelska" -#: InvenTree/settings.py:644 +#: InvenTree/settings.py:647 msgid "Spanish" msgstr "Spanska" -#: InvenTree/settings.py:645 +#: InvenTree/settings.py:648 msgid "Spanish (Mexican)" msgstr "Spanska (Mexikanska)" -#: InvenTree/settings.py:646 +#: InvenTree/settings.py:649 msgid "Farsi / Persian" msgstr "Farsi / Persiska" -#: InvenTree/settings.py:647 +#: InvenTree/settings.py:650 msgid "French" msgstr "Franska" -#: InvenTree/settings.py:648 +#: InvenTree/settings.py:651 msgid "Hebrew" msgstr "Hebreiska" -#: InvenTree/settings.py:649 +#: InvenTree/settings.py:652 msgid "Hungarian" msgstr "Ungerska" -#: InvenTree/settings.py:650 +#: InvenTree/settings.py:653 msgid "Italian" msgstr "Italienska" -#: InvenTree/settings.py:651 +#: InvenTree/settings.py:654 msgid "Japanese" msgstr "Japanska" -#: InvenTree/settings.py:652 +#: InvenTree/settings.py:655 msgid "Korean" msgstr "Koreanska" -#: InvenTree/settings.py:653 +#: InvenTree/settings.py:656 msgid "Dutch" msgstr "Nederländska" -#: InvenTree/settings.py:654 +#: InvenTree/settings.py:657 msgid "Norwegian" msgstr "Norska" -#: InvenTree/settings.py:655 +#: InvenTree/settings.py:658 msgid "Polish" msgstr "Polska" -#: InvenTree/settings.py:656 +#: InvenTree/settings.py:659 msgid "Portuguese" msgstr "Portugisiska" -#: InvenTree/settings.py:657 +#: InvenTree/settings.py:660 msgid "Portuguese (Brazilian)" msgstr "Portugisiska (brasiliansk)" -#: InvenTree/settings.py:658 +#: InvenTree/settings.py:661 msgid "Russian" msgstr "Ryska" -#: InvenTree/settings.py:659 +#: InvenTree/settings.py:662 msgid "Slovenian" msgstr "" -#: InvenTree/settings.py:660 +#: InvenTree/settings.py:663 msgid "Swedish" msgstr "Svenska" -#: InvenTree/settings.py:661 +#: InvenTree/settings.py:664 msgid "Thai" msgstr "Thailändska" -#: InvenTree/settings.py:662 +#: InvenTree/settings.py:665 msgid "Turkish" msgstr "Turkiska" -#: InvenTree/settings.py:663 +#: InvenTree/settings.py:666 msgid "Vietnamese" msgstr "Vietnamesiska" -#: InvenTree/settings.py:664 +#: InvenTree/settings.py:667 msgid "Chinese" msgstr "Kinesiska" @@ -652,7 +655,7 @@ msgstr "Dela från överordnat objekt" msgid "Split child item" msgstr "Dela underordnat objekt" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2124 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2119 msgid "Merged stock items" msgstr "Sammanfogade lagerposter" @@ -756,7 +759,7 @@ msgstr "Byggorder" #: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:141 -#: templates/InvenTree/settings/sidebar.html:47 +#: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:254 users/models.py:41 msgid "Build Orders" msgstr "Byggordrar" @@ -766,8 +769,9 @@ msgid "Build Order Reference" msgstr "Byggorderreferens" #: build/models.py:155 order/models.py:241 order/models.py:651 -#: order/models.py:941 part/admin.py:224 part/models.py:3378 +#: order/models.py:941 part/admin.py:257 part/models.py:3456 #: part/templates/part/upload_bom.html:54 +#: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 #: templates/js/translated/bom.js:729 templates/js/translated/bom.js:905 @@ -793,13 +797,15 @@ msgstr "Byggorder till vilken detta bygge är tilldelad" #: build/models.py:180 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:684 #: order/models.py:1038 order/models.py:1149 order/models.py:1150 -#: part/models.py:381 part/models.py:2781 part/models.py:2894 -#: part/models.py:2909 part/models.py:2928 part/models.py:2946 -#: part/models.py:3045 part/models.py:3166 part/models.py:3258 -#: part/models.py:3343 part/models.py:3659 part/serializers.py:853 -#: part/templates/part/part_app_base.html:8 +#: part/models.py:382 part/models.py:2799 part/models.py:2912 +#: part/models.py:2972 part/models.py:2987 part/models.py:3006 +#: part/models.py:3024 part/models.py:3123 part/models.py:3244 +#: part/models.py:3336 part/models.py:3421 part/models.py:3737 +#: part/serializers.py:894 part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 +#: report/templates/report/inventree_bill_of_materials_report.html:110 +#: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_base.html:109 #: report/templates/report/inventree_po_report.html:89 #: report/templates/report/inventree_so_report.html:90 stock/serializers.py:90 @@ -819,12 +825,12 @@ msgstr "Byggorder till vilken detta bygge är tilldelad" #: templates/js/translated/order.js:1172 templates/js/translated/order.js:1676 #: templates/js/translated/order.js:2252 templates/js/translated/order.js:3199 #: templates/js/translated/order.js:3595 templates/js/translated/order.js:3825 -#: templates/js/translated/part.js:1208 templates/js/translated/part.js:1280 -#: templates/js/translated/part.js:1474 templates/js/translated/pricing.js:102 -#: templates/js/translated/stock.js:618 templates/js/translated/stock.js:783 -#: templates/js/translated/stock.js:993 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2552 templates/js/translated/stock.js:2747 -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/part.js:1479 templates/js/translated/part.js:1551 +#: templates/js/translated/part.js:1745 templates/js/translated/pricing.js:102 +#: templates/js/translated/stock.js:617 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:992 templates/js/translated/stock.js:1738 +#: templates/js/translated/stock.js:2547 templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2879 msgid "Part" msgstr "Del" @@ -890,7 +896,7 @@ msgstr "Batchkod" msgid "Batch code for this build output" msgstr "Batch-kod för denna byggutdata" -#: build/models.py:252 order/models.py:87 part/models.py:1001 +#: build/models.py:252 order/models.py:87 part/models.py:1002 #: part/templates/part/part_base.html:318 templates/js/translated/order.js:2858 msgid "Creation Date" msgstr "Skapad" @@ -923,7 +929,7 @@ msgstr "Användare som utfärdade denna byggorder" #: build/models.py:283 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:101 #: order/templates/order/order_base.html:185 -#: order/templates/order/sales_order_base.html:183 part/models.py:1005 +#: order/templates/order/sales_order_base.html:183 part/models.py:1006 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2658 templates/js/translated/order.js:2064 msgid "Responsible" @@ -936,7 +942,7 @@ msgstr "Användare som ansvarar för denna byggorder" #: build/models.py:289 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:188 -#: part/templates/part/part_base.html:376 stock/models.py:714 +#: part/templates/part/part_base.html:390 stock/models.py:714 #: stock/templates/stock/item_base.html:203 msgid "External Link" msgstr "Extern länk" @@ -1011,8 +1017,8 @@ msgstr "Bygg för att allokera delar" #: templates/js/translated/order.js:107 templates/js/translated/order.js:3200 #: templates/js/translated/order.js:3502 templates/js/translated/order.js:3507 #: templates/js/translated/order.js:3602 templates/js/translated/order.js:3694 -#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 -#: templates/js/translated/stock.js:2625 +#: templates/js/translated/part.js:803 templates/js/translated/stock.js:618 +#: templates/js/translated/stock.js:783 templates/js/translated/stock.js:2620 msgid "Stock Item" msgstr "Artikel i lager" @@ -1022,12 +1028,13 @@ msgstr "Källa lagervara" #: build/models.py:1364 build/serializers.py:192 #: build/templates/build/build_base.html:85 -#: build/templates/build/detail.html:34 common/models.py:1842 +#: build/templates/build/detail.html:34 common/models.py:1849 #: order/models.py:934 order/models.py:1460 order/serializers.py:1206 -#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:223 -#: part/forms.py:40 part/models.py:3359 +#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:256 +#: part/forms.py:40 part/models.py:2919 part/models.py:3437 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 +#: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_base.html:113 #: report/templates/report/inventree_po_report.html:90 #: report/templates/report/inventree_so_report.html:91 @@ -1049,13 +1056,14 @@ msgstr "Källa lagervara" #: templates/js/translated/order.js:3201 templates/js/translated/order.js:3521 #: templates/js/translated/order.js:3608 templates/js/translated/order.js:3700 #: templates/js/translated/order.js:3847 templates/js/translated/order.js:4338 -#: templates/js/translated/part.js:1078 templates/js/translated/part.js:2568 +#: templates/js/translated/part.js:805 templates/js/translated/part.js:876 +#: templates/js/translated/part.js:1349 templates/js/translated/part.js:2849 #: templates/js/translated/pricing.js:114 #: templates/js/translated/pricing.js:207 #: templates/js/translated/pricing.js:255 -#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:490 -#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:814 -#: templates/js/translated/stock.js:2674 templates/js/translated/stock.js:2759 +#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:489 +#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:813 +#: templates/js/translated/stock.js:2669 templates/js/translated/stock.js:2754 msgid "Quantity" msgstr "Antal" @@ -1097,8 +1105,8 @@ msgid "Enter quantity for build output" msgstr "" #: build/serializers.py:207 build/serializers.py:683 order/models.py:327 -#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:645 -#: part/serializers.py:1016 stock/models.py:574 stock/models.py:1312 +#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:686 +#: part/serializers.py:1057 stock/models.py:574 stock/models.py:1312 #: stock/serializers.py:294 msgid "Quantity must be greater than zero" msgstr "" @@ -1113,7 +1121,7 @@ msgstr "" #: build/serializers.py:231 order/serializers.py:463 order/serializers.py:1210 #: stock/serializers.py:303 templates/js/translated/order.js:1545 -#: templates/js/translated/stock.js:303 templates/js/translated/stock.js:491 +#: templates/js/translated/stock.js:302 templates/js/translated/stock.js:490 msgid "Serial Numbers" msgstr "Serienummer" @@ -1146,9 +1154,10 @@ msgstr "" #: templates/js/translated/build.js:1759 templates/js/translated/order.js:1572 #: templates/js/translated/order.js:3514 templates/js/translated/order.js:3619 #: templates/js/translated/order.js:3627 templates/js/translated/order.js:3708 -#: templates/js/translated/part.js:183 templates/js/translated/stock.js:620 -#: templates/js/translated/stock.js:785 templates/js/translated/stock.js:995 -#: templates/js/translated/stock.js:1895 templates/js/translated/stock.js:2566 +#: templates/js/translated/part.js:186 templates/js/translated/part.js:804 +#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 +#: templates/js/translated/stock.js:994 templates/js/translated/stock.js:1890 +#: templates/js/translated/stock.js:2561 msgid "Location" msgstr "Plats" @@ -1162,8 +1171,8 @@ msgstr "" #: stock/templates/stock/item_base.html:421 #: templates/js/translated/barcode.js:237 templates/js/translated/build.js:2630 #: templates/js/translated/order.js:1681 templates/js/translated/order.js:2034 -#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1870 -#: templates/js/translated/stock.js:2643 templates/js/translated/stock.js:2775 +#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:2638 templates/js/translated/stock.js:2770 msgid "Status" msgstr "Status" @@ -1239,8 +1248,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:595 build/serializers.py:640 part/models.py:3495 -#: part/models.py:3651 +#: build/serializers.py:595 build/serializers.py:640 part/models.py:3573 +#: part/models.py:3729 msgid "BOM Item" msgstr "" @@ -1406,7 +1415,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2670 templates/js/translated/order.js:2051 #: templates/js/translated/order.js:2382 templates/js/translated/order.js:2866 -#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1093 +#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1364 msgid "Target Date" msgstr "Måldatum" @@ -1484,8 +1493,8 @@ msgstr "" #: stock/templates/stock/item_base.html:168 #: templates/js/translated/build.js:1250 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:1884 -#: templates/js/translated/stock.js:2782 +#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:1879 +#: templates/js/translated/stock.js:2777 #: templates/js/translated/table_filters.js:179 #: templates/js/translated/table_filters.js:270 msgid "Batch" @@ -1617,8 +1626,8 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:86 #: order/templates/order/sales_order_detail.html:140 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:210 -#: part/templates/part/part_sidebar.html:55 stock/templates/stock/item.html:117 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:233 +#: part/templates/part/part_sidebar.html:60 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" msgstr "Bilagor" @@ -1635,7 +1644,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:316 +#: build/templates/build/index.html:18 part/templates/part/detail.html:339 msgid "New Build Order" msgstr "Ny byggorder" @@ -1928,9 +1937,9 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1014 part/admin.py:41 part/models.py:3168 +#: common/models.py:1014 part/admin.py:41 part/models.py:3246 #: report/models.py:158 templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:504 +#: templates/js/translated/table_filters.js:508 msgid "Template" msgstr "" @@ -1938,7 +1947,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:1021 part/admin.py:37 part/admin.py:229 part/models.py:957 +#: common/models.py:1021 part/admin.py:37 part/admin.py:262 part/models.py:958 #: templates/js/translated/bom.js:1595 #: templates/js/translated/table_filters.js:196 #: templates/js/translated/table_filters.js:467 @@ -1949,7 +1958,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1028 part/admin.py:38 part/models.py:963 +#: common/models.py:1028 part/admin.py:38 part/models.py:964 #: templates/js/translated/table_filters.js:475 msgid "Component" msgstr "" @@ -1958,7 +1967,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1035 part/admin.py:39 part/models.py:974 +#: common/models.py:1035 part/admin.py:39 part/models.py:975 msgid "Purchaseable" msgstr "" @@ -1966,7 +1975,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1042 part/admin.py:40 part/models.py:979 +#: common/models.py:1042 part/admin.py:40 part/models.py:980 #: templates/js/translated/table_filters.js:496 msgid "Salable" msgstr "" @@ -1975,10 +1984,10 @@ msgstr "" msgid "Parts are salable by default" msgstr "" -#: common/models.py:1049 part/admin.py:42 part/models.py:969 +#: common/models.py:1049 part/admin.py:42 part/models.py:970 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:120 -#: templates/js/translated/table_filters.js:508 +#: templates/js/translated/table_filters.js:512 msgid "Trackable" msgstr "" @@ -1986,10 +1995,10 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1056 part/admin.py:43 part/models.py:989 +#: common/models.py:1056 part/admin.py:43 part/models.py:990 #: part/templates/part/part_base.html:156 #: templates/js/translated/table_filters.js:42 -#: templates/js/translated/table_filters.js:512 +#: templates/js/translated/table_filters.js:516 msgid "Virtual" msgstr "Virtuell" @@ -2417,7 +2426,7 @@ msgstr "" msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1461 common/models.py:1803 +#: common/models.py:1461 common/models.py:1810 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -2749,41 +2758,50 @@ msgstr "" msgid "Display part scheduling information" msgstr "" -#: common/models.py:1778 -msgid "Table String Length" +#: common/models.py:1778 part/templates/part/detail.html:61 +#: templates/js/translated/part.js:822 +msgid "Part Stocktake" msgstr "" #: common/models.py:1779 +msgid "Display part stocktake information" +msgstr "" + +#: common/models.py:1785 +msgid "Table String Length" +msgstr "" + +#: common/models.py:1786 msgid "Maximimum length limit for strings displayed in table views" msgstr "" -#: common/models.py:1843 +#: common/models.py:1850 msgid "Price break quantity" msgstr "" -#: common/models.py:1850 company/serializers.py:393 order/models.py:975 -#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1145 +#: common/models.py:1857 company/serializers.py:393 order/models.py:975 +#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1416 #: templates/js/translated/pricing.js:354 msgid "Price" msgstr "" -#: common/models.py:1851 +#: common/models.py:1858 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2011 common/models.py:2189 +#: common/models.py:2018 common/models.py:2196 msgid "Endpoint" msgstr "" -#: common/models.py:2012 +#: common/models.py:2019 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2021 +#: common/models.py:2028 msgid "Name for this webhook" msgstr "" -#: common/models.py:2026 part/admin.py:36 part/models.py:984 +#: common/models.py:2033 part/admin.py:36 part/models.py:985 #: plugin/models.py:100 templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:116 #: templates/js/translated/table_filters.js:336 @@ -2791,131 +2809,133 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:2027 +#: common/models.py:2034 msgid "Is this webhook active" msgstr "" -#: common/models.py:2041 +#: common/models.py:2048 msgid "Token" msgstr "" -#: common/models.py:2042 +#: common/models.py:2049 msgid "Token for access" msgstr "" -#: common/models.py:2049 +#: common/models.py:2056 msgid "Secret" msgstr "" -#: common/models.py:2050 +#: common/models.py:2057 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2156 +#: common/models.py:2163 msgid "Message ID" msgstr "" -#: common/models.py:2157 +#: common/models.py:2164 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2165 +#: common/models.py:2172 msgid "Host" msgstr "" -#: common/models.py:2166 +#: common/models.py:2173 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2173 +#: common/models.py:2180 msgid "Header" msgstr "" -#: common/models.py:2174 +#: common/models.py:2181 msgid "Header of this message" msgstr "" -#: common/models.py:2180 +#: common/models.py:2187 msgid "Body" msgstr "" -#: common/models.py:2181 +#: common/models.py:2188 msgid "Body of this message" msgstr "" -#: common/models.py:2190 +#: common/models.py:2197 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2195 +#: common/models.py:2202 msgid "Worked on" msgstr "" -#: common/models.py:2196 +#: common/models.py:2203 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2355 +#: common/models.py:2362 msgid "Id" msgstr "" -#: common/models.py:2361 templates/js/translated/news.js:35 +#: common/models.py:2368 templates/js/translated/news.js:35 msgid "Title" msgstr "" -#: common/models.py:2371 templates/js/translated/news.js:51 +#: common/models.py:2378 templates/js/translated/news.js:51 msgid "Published" msgstr "" -#: common/models.py:2376 templates/InvenTree/settings/plugin.html:62 +#: common/models.py:2383 templates/InvenTree/settings/plugin.html:62 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/news.js:47 msgid "Author" msgstr "" -#: common/models.py:2381 templates/js/translated/news.js:43 +#: common/models.py:2388 templates/js/translated/news.js:43 msgid "Summary" msgstr "" -#: common/models.py:2386 +#: common/models.py:2393 msgid "Read" msgstr "" -#: common/models.py:2387 +#: common/models.py:2394 msgid "Was this news item read?" msgstr "" -#: common/notifications.py:293 +#: common/notifications.py:294 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:295 +#: common/notifications.py:296 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:301 +#: common/notifications.py:302 msgid "Items Received" msgstr "" -#: common/notifications.py:303 +#: common/notifications.py:304 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:415 +#: common/notifications.py:416 msgid "Error raised by plugin" msgstr "" #: common/views.py:85 order/templates/order/order_wizard/po_upload.html:51 #: order/templates/order/purchase_order_detail.html:25 order/views.py:102 -#: part/views.py:107 templates/patterns/wizard/upload.html:37 +#: part/templates/part/import_wizard/part_upload.html:58 part/views.py:109 +#: templates/patterns/wizard/upload.html:37 msgid "Upload File" msgstr "" #: common/views.py:86 order/templates/order/order_wizard/match_fields.html:52 #: order/views.py:103 #: part/templates/part/import_wizard/ajax_match_fields.html:45 -#: part/views.py:108 templates/patterns/wizard/match_fields.html:51 +#: part/templates/part/import_wizard/match_fields.html:52 part/views.py:110 +#: templates/patterns/wizard/match_fields.html:51 msgid "Match Fields" msgstr "" @@ -2934,7 +2954,9 @@ msgstr "" #: common/views.py:509 order/templates/order/order_wizard/match_fields.html:27 #: order/templates/order/order_wizard/match_parts.html:19 #: order/templates/order/order_wizard/po_upload.html:49 +#: part/templates/part/import_wizard/match_fields.html:27 #: part/templates/part/import_wizard/match_references.html:19 +#: part/templates/part/import_wizard/part_upload.html:56 #: templates/patterns/wizard/match_fields.html:26 #: templates/patterns/wizard/upload.html:35 msgid "Previous Step" @@ -2995,7 +3017,7 @@ msgstr "" msgid "Link to external company information" msgstr "" -#: company/models.py:140 part/models.py:878 +#: company/models.py:140 part/models.py:879 msgid "Image" msgstr "" @@ -3028,8 +3050,8 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:153 company/serializers.py:399 -#: company/templates/company/company_base.html:107 part/models.py:2762 -#: part/serializers.py:154 part/serializers.py:182 stock/serializers.py:182 +#: company/templates/company/company_base.html:107 part/models.py:2780 +#: part/serializers.py:156 part/serializers.py:184 stock/serializers.py:182 #: templates/InvenTree/settings/pricing.html:64 msgid "Currency" msgstr "" @@ -3055,12 +3077,12 @@ msgstr "" #: templates/js/translated/company.js:433 #: templates/js/translated/company.js:534 #: templates/js/translated/company.js:669 -#: templates/js/translated/company.js:957 templates/js/translated/part.js:238 +#: templates/js/translated/company.js:957 templates/js/translated/part.js:241 #: templates/js/translated/table_filters.js:439 msgid "Manufacturer" msgstr "" -#: company/models.py:269 templates/js/translated/part.js:239 +#: company/models.py:269 templates/js/translated/part.js:242 msgid "Select manufacturer" msgstr "" @@ -3070,11 +3092,11 @@ msgstr "" #: templates/js/translated/company.js:533 #: templates/js/translated/company.js:685 #: templates/js/translated/company.js:976 templates/js/translated/order.js:2286 -#: templates/js/translated/part.js:249 templates/js/translated/part.js:1067 +#: templates/js/translated/part.js:252 templates/js/translated/part.js:1338 msgid "MPN" msgstr "" -#: company/models.py:276 templates/js/translated/part.js:250 +#: company/models.py:276 templates/js/translated/part.js:253 msgid "Manufacturer Part Number" msgstr "" @@ -3100,8 +3122,8 @@ msgstr "" #: company/models.py:370 #: report/templates/report/inventree_test_report_base.html:95 #: stock/models.py:2156 templates/js/translated/company.js:582 -#: templates/js/translated/company.js:800 templates/js/translated/part.js:889 -#: templates/js/translated/stock.js:1399 +#: templates/js/translated/company.js:800 templates/js/translated/part.js:1160 +#: templates/js/translated/stock.js:1398 msgid "Value" msgstr "" @@ -3109,10 +3131,10 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:377 part/admin.py:26 part/models.py:951 -#: part/models.py:3128 part/templates/part/part_base.html:286 -#: templates/InvenTree/settings/settings.html:349 -#: templates/js/translated/company.js:806 templates/js/translated/part.js:895 +#: company/models.py:377 part/admin.py:26 part/models.py:952 +#: part/models.py:3206 part/templates/part/part_base.html:286 +#: templates/InvenTree/settings/settings.html:350 +#: templates/js/translated/company.js:806 templates/js/translated/part.js:1166 msgid "Units" msgstr "" @@ -3132,24 +3154,24 @@ msgstr "" #: templates/js/translated/company.js:304 #: templates/js/translated/company.js:437 #: templates/js/translated/company.js:930 templates/js/translated/order.js:2017 -#: templates/js/translated/part.js:219 templates/js/translated/part.js:1035 +#: templates/js/translated/part.js:222 templates/js/translated/part.js:1306 #: templates/js/translated/pricing.js:231 #: templates/js/translated/table_filters.js:443 msgid "Supplier" msgstr "" -#: company/models.py:498 templates/js/translated/part.js:220 +#: company/models.py:498 templates/js/translated/part.js:223 msgid "Select supplier" msgstr "" #: company/models.py:503 company/templates/company/supplier_part.html:146 #: part/bom.py:253 part/bom.py:281 templates/js/translated/company.js:303 -#: templates/js/translated/order.js:2273 templates/js/translated/part.js:230 -#: templates/js/translated/part.js:1053 templates/js/translated/pricing.js:243 +#: templates/js/translated/order.js:2273 templates/js/translated/part.js:233 +#: templates/js/translated/part.js:1324 templates/js/translated/pricing.js:243 msgid "SKU" msgstr "" -#: company/models.py:504 templates/js/translated/part.js:231 +#: company/models.py:504 templates/js/translated/part.js:234 msgid "Supplier stock keeping unit" msgstr "" @@ -3166,24 +3188,25 @@ msgid "Supplier part description" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:181 -#: part/admin.py:225 part/models.py:3381 part/templates/part/upload_bom.html:59 +#: part/admin.py:258 part/models.py:3459 part/templates/part/upload_bom.html:59 +#: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:397 msgid "Note" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "base cost" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:534 company/templates/company/supplier_part.html:167 #: stock/admin.py:101 stock/models.py:682 #: stock/templates/stock/item_base.html:243 -#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2016 +#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2011 msgid "Packaging" msgstr "" @@ -3196,7 +3219,7 @@ msgstr "" #: templates/js/translated/company.js:997 templates/js/translated/order.js:826 #: templates/js/translated/order.js:1253 templates/js/translated/order.js:1508 #: templates/js/translated/order.js:2317 templates/js/translated/order.js:2334 -#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1137 +#: templates/js/translated/part.js:1356 templates/js/translated/part.js:1408 msgid "Pack Quantity" msgstr "" @@ -3204,7 +3227,7 @@ msgstr "" msgid "Unit quantity supplied in a single pack" msgstr "" -#: company/models.py:544 part/models.py:1863 +#: company/models.py:544 part/models.py:1869 msgid "multiple" msgstr "" @@ -3216,8 +3239,8 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:1118 templates/js/translated/build.js:1883 -#: templates/js/translated/build.js:2770 templates/js/translated/part.js:623 -#: templates/js/translated/part.js:626 +#: templates/js/translated/build.js:2770 templates/js/translated/part.js:626 +#: templates/js/translated/part.js:629 #: templates/js/translated/table_filters.js:206 msgid "Available" msgstr "" @@ -3300,7 +3323,7 @@ msgstr "" #: stock/templates/stock/item_base.html:399 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:429 templates/js/translated/order.js:2827 -#: templates/js/translated/stock.js:2607 +#: templates/js/translated/stock.js:2602 #: templates/js/translated/table_filters.js:447 msgid "Customer" msgstr "" @@ -3314,7 +3337,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:206 -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:525 msgid "Remove Image" msgstr "" @@ -3323,19 +3346,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:209 -#: part/templates/part/part_base.html:514 +#: part/templates/part/part_base.html:528 #: templates/InvenTree/settings/user.html:87 #: templates/InvenTree/settings/user.html:149 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:238 -#: part/templates/part/part_base.html:543 +#: part/templates/part/part_base.html:557 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:253 -#: part/templates/part/part_base.html:598 +#: part/templates/part/part_base.html:612 msgid "Download Image" msgstr "" @@ -3351,7 +3374,7 @@ msgstr "" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:357 +#: part/templates/part/detail.html:380 msgid "New Supplier Part" msgstr "" @@ -3380,7 +3403,7 @@ msgstr "" msgid "Create new manufacturer part" msgstr "" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:387 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:410 msgid "New Manufacturer Part" msgstr "" @@ -3394,9 +3417,9 @@ msgstr "" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:35 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:35 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:200 -#: templates/InvenTree/settings/sidebar.html:49 +#: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:293 templates/navbar.html:50 #: users/models.py:42 msgid "Purchase Orders" @@ -3417,9 +3440,9 @@ msgstr "" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:39 +#: part/templates/part/detail.html:130 part/templates/part/part_sidebar.html:39 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:220 -#: templates/InvenTree/settings/sidebar.html:51 +#: templates/InvenTree/settings/sidebar.html:53 #: templates/js/translated/search.js:317 templates/navbar.html:61 #: users/models.py:43 msgid "Sales Orders" @@ -3451,7 +3474,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:221 -#: part/templates/part/detail.html:87 part/templates/part/part_base.html:85 +#: part/templates/part/detail.html:110 part/templates/part/part_base.html:85 msgid "Order part" msgstr "" @@ -3482,28 +3505,28 @@ msgid "Suppliers" msgstr "" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:368 +#: part/templates/part/detail.html:391 msgid "Delete supplier parts" msgstr "" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:369 part/templates/part/detail.html:399 -#: templates/js/translated/forms.js:455 templates/js/translated/helpers.js:38 -#: templates/js/translated/part.js:351 templates/js/translated/stock.js:188 -#: users/models.py:224 +#: part/templates/part/detail.html:392 part/templates/part/detail.html:422 +#: templates/js/translated/forms.js:458 templates/js/translated/helpers.js:38 +#: templates/js/translated/part.js:354 templates/js/translated/stock.js:187 +#: users/models.py:225 msgid "Delete" msgstr "" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:184 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:207 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:189 +#: part/templates/part/detail.html:212 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:62 msgid "New Parameter" @@ -3514,7 +3537,7 @@ msgid "Delete parameters" msgstr "" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:825 +#: part/templates/part/detail.html:865 msgid "Add Parameter" msgstr "" @@ -3538,7 +3561,7 @@ msgstr "" #: company/templates/company/supplier_part.html:24 stock/models.py:665 #: stock/templates/stock/item_base.html:236 #: templates/js/translated/company.js:946 templates/js/translated/order.js:1173 -#: templates/js/translated/stock.js:1974 +#: templates/js/translated/stock.js:1969 msgid "Supplier Part" msgstr "" @@ -3578,7 +3601,7 @@ msgstr "" #: company/templates/company/supplier_part.html:56 #: company/templates/company/supplier_part.html:57 #: company/templates/company/supplier_part.html:222 -#: part/templates/part/detail.html:88 +#: part/templates/part/detail.html:111 msgid "Order Part" msgstr "" @@ -3630,7 +3653,7 @@ msgstr "" #: company/templates/company/supplier_part.html:204 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:198 -#: templates/js/translated/stock.js:467 +#: templates/js/translated/stock.js:466 msgid "New Stock Item" msgstr "" @@ -3662,10 +3685,10 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 -#: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/part.js:777 templates/js/translated/part.js:1378 -#: templates/js/translated/part.js:1534 templates/js/translated/stock.js:994 -#: templates/js/translated/stock.js:1799 templates/navbar.html:31 +#: templates/InvenTree/settings/sidebar.html:47 +#: templates/js/translated/part.js:1048 templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1805 templates/js/translated/stock.js:993 +#: templates/js/translated/stock.js:1794 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3680,7 +3703,7 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:29 #: part/templates/part/part_sidebar.html:30 -#: templates/InvenTree/settings/sidebar.html:35 +#: templates/InvenTree/settings/sidebar.html:37 msgid "Pricing" msgstr "" @@ -3692,7 +3715,7 @@ msgstr "" #: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:155 templates/js/translated/search.js:225 -#: templates/js/translated/stock.js:2484 users/models.py:40 +#: templates/js/translated/stock.js:2479 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3801,9 +3824,9 @@ msgstr "" #: stock/templates/stock/item_base.html:182 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:619 templates/js/translated/order.js:1174 -#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1012 -#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1954 -#: templates/js/translated/stock.js:2588 +#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1283 +#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1949 +#: templates/js/translated/stock.js:2583 msgid "Purchase Order" msgstr "" @@ -3973,7 +3996,7 @@ msgstr "" #: order/models.py:1046 order/templates/order/order_base.html:178 #: templates/js/translated/order.js:1679 templates/js/translated/order.js:2404 -#: templates/js/translated/part.js:1129 templates/js/translated/part.js:1161 +#: templates/js/translated/part.js:1400 templates/js/translated/part.js:1432 #: templates/js/translated/table_filters.js:358 msgid "Received" msgstr "" @@ -3984,7 +4007,7 @@ msgstr "" #: order/models.py:1054 stock/models.py:800 stock/serializers.py:173 #: stock/templates/stock/item_base.html:189 -#: templates/js/translated/stock.js:2005 +#: templates/js/translated/stock.js:2000 msgid "Purchase Price" msgstr "" @@ -4350,18 +4373,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:9 #: part/templates/part/import_wizard/ajax_match_fields.html:9 +#: part/templates/part/import_wizard/match_fields.html:9 #: templates/patterns/wizard/match_fields.html:8 msgid "Missing selections for the following required columns" msgstr "" #: order/templates/order/order_wizard/match_fields.html:20 #: part/templates/part/import_wizard/ajax_match_fields.html:20 +#: part/templates/part/import_wizard/match_fields.html:20 #: templates/patterns/wizard/match_fields.html:19 msgid "Duplicate selections found, see below. Fix them then retry submitting." msgstr "" #: order/templates/order/order_wizard/match_fields.html:29 #: order/templates/order/order_wizard/match_parts.html:21 +#: part/templates/part/import_wizard/match_fields.html:29 #: part/templates/part/import_wizard/match_references.html:21 #: templates/patterns/wizard/match_fields.html:28 msgid "Submit Selections" @@ -4369,18 +4395,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:35 #: part/templates/part/import_wizard/ajax_match_fields.html:28 +#: part/templates/part/import_wizard/match_fields.html:35 #: templates/patterns/wizard/match_fields.html:34 msgid "File Fields" msgstr "" #: order/templates/order/order_wizard/match_fields.html:42 #: part/templates/part/import_wizard/ajax_match_fields.html:35 +#: part/templates/part/import_wizard/match_fields.html:42 #: templates/patterns/wizard/match_fields.html:41 msgid "Remove column" msgstr "" #: order/templates/order/order_wizard/match_fields.html:60 #: part/templates/part/import_wizard/ajax_match_fields.html:53 +#: part/templates/part/import_wizard/match_fields.html:60 #: templates/patterns/wizard/match_fields.html:59 msgid "Duplicate selection" msgstr "" @@ -4389,12 +4418,13 @@ msgstr "" #: order/templates/order/order_wizard/match_parts.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: 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:102 templates/js/translated/build.js:485 #: templates/js/translated/build.js:641 templates/js/translated/build.js:2088 #: templates/js/translated/order.js:1122 templates/js/translated/order.js:1624 -#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:657 -#: templates/js/translated/stock.js:825 +#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:824 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4429,6 +4459,7 @@ msgstr "" #: order/templates/order/order_wizard/po_upload.html:27 #: part/templates/part/import_wizard/ajax_part_upload.html:10 +#: part/templates/part/import_wizard/part_upload.html:26 #: templates/patterns/wizard/upload.html:13 #, python-format msgid "Step %(step)s of %(count)s" @@ -4567,12 +4598,12 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:19 part/admin.py:219 part/models.py:3262 stock/admin.py:84 +#: part/admin.py:19 part/admin.py:252 part/models.py:3340 stock/admin.py:84 #: templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/admin.py:20 part/admin.py:221 part/models.py:3266 stock/admin.py:85 +#: part/admin.py:20 part/admin.py:254 part/models.py:3344 stock/admin.py:85 msgid "Part Name" msgstr "" @@ -4580,32 +4611,32 @@ msgstr "" msgid "Part Description" msgstr "" -#: part/admin.py:22 part/models.py:852 part/templates/part/part_base.html:272 -#: templates/js/translated/part.js:763 templates/js/translated/part.js:1491 -#: templates/js/translated/stock.js:1765 +#: part/admin.py:22 part/models.py:853 part/templates/part/part_base.html:272 +#: templates/js/translated/part.js:1034 templates/js/translated/part.js:1762 +#: templates/js/translated/stock.js:1760 msgid "IPN" msgstr "" -#: part/admin.py:23 part/models.py:860 part/templates/part/part_base.html:279 -#: report/models.py:171 templates/js/translated/part.js:768 +#: part/admin.py:23 part/models.py:861 part/templates/part/part_base.html:279 +#: report/models.py:171 templates/js/translated/part.js:1039 msgid "Revision" msgstr "" -#: part/admin.py:24 part/admin.py:145 part/models.py:838 +#: part/admin.py:24 part/admin.py:178 part/models.py:839 #: part/templates/part/category.html:87 part/templates/part/part_base.html:300 msgid "Keywords" msgstr "" -#: part/admin.py:28 part/admin.py:139 +#: part/admin.py:28 part/admin.py:172 #: templates/js/translated/model_renderers.js:338 msgid "Category ID" msgstr "" -#: part/admin.py:29 part/admin.py:140 +#: part/admin.py:29 part/admin.py:173 msgid "Category Name" msgstr "" -#: part/admin.py:30 part/admin.py:144 +#: part/admin.py:30 part/admin.py:177 msgid "Default Location ID" msgstr "" @@ -4613,7 +4644,7 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:33 part/models.py:944 part/templates/part/part_base.html:206 +#: part/admin.py:33 part/models.py:945 part/templates/part/part_base.html:206 msgid "Minimum Stock" msgstr "" @@ -4625,8 +4656,8 @@ msgstr "" #: part/admin.py:48 part/bom.py:145 part/templates/part/part_base.html:213 #: templates/js/translated/bom.js:1156 templates/js/translated/build.js:1935 -#: templates/js/translated/part.js:613 templates/js/translated/part.js:633 -#: templates/js/translated/part.js:1381 templates/js/translated/part.js:1559 +#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 +#: templates/js/translated/part.js:1652 templates/js/translated/part.js:1830 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4642,115 +4673,115 @@ msgid "Allocated" msgstr "" #: part/admin.py:51 part/templates/part/part_base.html:244 -#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 -#: templates/js/translated/part.js:1385 templates/js/translated/part.js:1566 +#: templates/js/translated/part.js:619 templates/js/translated/part.js:639 +#: templates/js/translated/part.js:1656 templates/js/translated/part.js:1837 msgid "Building" msgstr "" -#: part/admin.py:52 part/models.py:2846 +#: part/admin.py:52 part/models.py:2864 msgid "Minimum Cost" msgstr "" -#: part/admin.py:53 part/models.py:2852 +#: part/admin.py:53 part/models.py:2870 msgid "Maximum Cost" msgstr "" -#: part/admin.py:142 part/admin.py:216 stock/admin.py:26 stock/admin.py:98 +#: part/admin.py:175 part/admin.py:249 stock/admin.py:26 stock/admin.py:98 msgid "Parent ID" msgstr "" -#: part/admin.py:143 part/admin.py:218 stock/admin.py:27 +#: part/admin.py:176 part/admin.py:251 stock/admin.py:27 msgid "Parent Name" msgstr "" -#: part/admin.py:146 part/templates/part/category.html:81 +#: part/admin.py:179 part/templates/part/category.html:81 #: part/templates/part/category.html:94 msgid "Category Path" msgstr "" -#: part/admin.py:149 part/models.py:382 part/templates/part/cat_link.html:3 +#: part/admin.py:182 part/models.py:383 part/templates/part/cat_link.html:3 #: part/templates/part/category.html:23 part/templates/part/category.html:134 #: part/templates/part/category.html:154 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:84 -#: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:2065 templates/js/translated/search.js:146 +#: templates/InvenTree/settings/sidebar.html:43 +#: templates/js/translated/part.js:2346 templates/js/translated/search.js:146 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" -#: part/admin.py:211 +#: part/admin.py:244 msgid "BOM Level" msgstr "" -#: part/admin.py:213 +#: part/admin.py:246 msgid "BOM Item ID" msgstr "" -#: part/admin.py:217 +#: part/admin.py:250 msgid "Parent IPN" msgstr "" -#: part/admin.py:220 part/models.py:3270 +#: part/admin.py:253 part/models.py:3348 msgid "Part IPN" msgstr "" -#: part/admin.py:226 templates/js/translated/pricing.js:91 +#: part/admin.py:259 templates/js/translated/pricing.js:91 #: templates/js/translated/pricing.js:732 msgid "Minimum Price" msgstr "" -#: part/admin.py:227 templates/js/translated/pricing.js:86 +#: part/admin.py:260 templates/js/translated/pricing.js:86 #: templates/js/translated/pricing.js:740 msgid "Maximum Price" msgstr "" -#: part/api.py:536 +#: part/api.py:538 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:556 +#: part/api.py:558 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:574 +#: part/api.py:576 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:660 +#: part/api.py:662 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:818 +#: part/api.py:820 msgid "Valid" msgstr "" -#: part/api.py:819 +#: part/api.py:821 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:825 +#: part/api.py:827 msgid "This option must be selected" msgstr "" -#: part/api.py:1265 +#: part/api.py:1281 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1269 +#: part/api.py:1285 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1284 +#: part/api.py:1300 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1315 part/api.py:1319 part/api.py:1334 part/api.py:1338 +#: part/api.py:1331 part/api.py:1335 part/api.py:1350 part/api.py:1354 msgid "This field is required" msgstr "" -#: part/bom.py:142 part/models.py:116 part/models.py:887 -#: part/templates/part/category.html:109 part/templates/part/part_base.html:360 +#: part/bom.py:142 part/models.py:116 part/models.py:888 +#: part/templates/part/category.html:109 part/templates/part/part_base.html:374 msgid "Default Location" msgstr "" @@ -4801,7 +4832,7 @@ msgstr "" msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:159 part/models.py:3211 part/templates/part/category.html:16 +#: part/models.py:159 part/models.py:3289 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -4812,423 +4843,459 @@ msgstr "" msgid "Part Categories" msgstr "" -#: part/models.py:468 +#: part/models.py:469 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:538 part/models.py:550 +#: part/models.py:539 part/models.py:551 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:640 +#: part/models.py:641 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:771 +#: part/models.py:772 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:776 +#: part/models.py:777 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:790 +#: part/models.py:791 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:808 part/models.py:3267 +#: part/models.py:809 part/models.py:3345 msgid "Part name" msgstr "" -#: part/models.py:815 +#: part/models.py:816 msgid "Is Template" msgstr "" -#: part/models.py:816 +#: part/models.py:817 msgid "Is this part a template part?" msgstr "" -#: part/models.py:826 +#: part/models.py:827 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:827 +#: part/models.py:828 msgid "Variant Of" msgstr "" -#: part/models.py:833 +#: part/models.py:834 msgid "Part description" msgstr "" -#: part/models.py:839 +#: part/models.py:840 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:846 part/models.py:2966 part/models.py:3210 +#: part/models.py:847 part/models.py:3044 part/models.py:3288 #: part/templates/part/part_base.html:263 -#: templates/InvenTree/settings/settings.html:229 +#: templates/InvenTree/settings/settings.html:230 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1513 templates/js/translated/part.js:1770 +#: templates/js/translated/part.js:1784 templates/js/translated/part.js:2051 msgid "Category" msgstr "" -#: part/models.py:847 +#: part/models.py:848 msgid "Part category" msgstr "" -#: part/models.py:853 +#: part/models.py:854 msgid "Internal Part Number" msgstr "" -#: part/models.py:859 +#: part/models.py:860 msgid "Part revision or version number" msgstr "" -#: part/models.py:885 +#: part/models.py:886 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:930 part/templates/part/part_base.html:369 +#: part/models.py:931 part/templates/part/part_base.html:383 msgid "Default Supplier" msgstr "" -#: part/models.py:931 +#: part/models.py:932 msgid "Default supplier part" msgstr "" -#: part/models.py:938 +#: part/models.py:939 msgid "Default Expiry" msgstr "" -#: part/models.py:939 +#: part/models.py:940 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:945 +#: part/models.py:946 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:952 +#: part/models.py:953 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:958 +#: part/models.py:959 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:964 +#: part/models.py:965 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:970 +#: part/models.py:971 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:975 +#: part/models.py:976 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:980 +#: part/models.py:981 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:985 +#: part/models.py:986 msgid "Is this part active?" msgstr "" -#: part/models.py:990 +#: part/models.py:991 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:992 +#: part/models.py:993 msgid "Part notes" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "BOM checksum" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:997 +#: part/models.py:998 msgid "BOM checked by" msgstr "" -#: part/models.py:999 +#: part/models.py:1000 msgid "BOM checked date" msgstr "" -#: part/models.py:1003 +#: part/models.py:1004 msgid "Creation User" msgstr "" -#: part/models.py:1863 +#: part/models.py:1010 part/templates/part/part_base.html:345 +#: stock/templates/stock/item_base.html:445 +#: templates/js/translated/part.js:1901 +msgid "Last Stocktake" +msgstr "" + +#: part/models.py:1869 msgid "Sell multiple" msgstr "" -#: part/models.py:2763 +#: part/models.py:2781 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:2768 +#: part/models.py:2786 templates/js/translated/part.js:806 msgid "Updated" msgstr "" -#: part/models.py:2769 +#: part/models.py:2787 msgid "Timestamp of last pricing update" msgstr "" -#: part/models.py:2786 +#: part/models.py:2804 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:2787 +#: part/models.py:2805 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:2792 +#: part/models.py:2810 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:2793 +#: part/models.py:2811 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:2798 +#: part/models.py:2816 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:2799 +#: part/models.py:2817 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:2804 +#: part/models.py:2822 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:2805 +#: part/models.py:2823 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:2810 +#: part/models.py:2828 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:2811 +#: part/models.py:2829 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:2816 +#: part/models.py:2834 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:2817 +#: part/models.py:2835 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:2822 +#: part/models.py:2840 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:2823 +#: part/models.py:2841 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:2828 +#: part/models.py:2846 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:2829 +#: part/models.py:2847 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:2834 +#: part/models.py:2852 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:2835 +#: part/models.py:2853 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:2840 +#: part/models.py:2858 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:2841 +#: part/models.py:2859 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:2847 +#: part/models.py:2865 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:2853 +#: part/models.py:2871 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:2858 +#: part/models.py:2876 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:2859 +#: part/models.py:2877 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:2864 +#: part/models.py:2882 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:2865 +#: part/models.py:2883 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:2870 +#: part/models.py:2888 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:2871 +#: part/models.py:2889 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:2876 +#: part/models.py:2894 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:2877 +#: part/models.py:2895 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3013 +#: part/models.py:2913 +msgid "Part for stocktake" +msgstr "" + +#: part/models.py:2920 +msgid "Total available stock at time of stocktake" +msgstr "" + +#: part/models.py:2924 part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:63 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:2043 templates/js/translated/part.js:887 +#: templates/js/translated/pricing.js:537 +#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2511 +msgid "Date" +msgstr "" + +#: part/models.py:2925 +msgid "Date stocktake was performed" +msgstr "" + +#: part/models.py:2933 +msgid "Additional notes" +msgstr "" + +#: part/models.py:2941 +msgid "User who performed this stocktake" +msgstr "" + +#: part/models.py:3091 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3030 +#: part/models.py:3108 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:3050 templates/js/translated/part.js:2116 -#: templates/js/translated/stock.js:1379 +#: part/models.py:3128 templates/js/translated/part.js:2397 +#: templates/js/translated/stock.js:1378 msgid "Test Name" msgstr "" -#: part/models.py:3051 +#: part/models.py:3129 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3056 +#: part/models.py:3134 msgid "Test Description" msgstr "" -#: part/models.py:3057 +#: part/models.py:3135 msgid "Enter description for this test" msgstr "" -#: part/models.py:3062 templates/js/translated/part.js:2125 +#: part/models.py:3140 templates/js/translated/part.js:2406 #: templates/js/translated/table_filters.js:322 msgid "Required" msgstr "" -#: part/models.py:3063 +#: part/models.py:3141 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3068 templates/js/translated/part.js:2133 +#: part/models.py:3146 templates/js/translated/part.js:2414 msgid "Requires Value" msgstr "" -#: part/models.py:3069 +#: part/models.py:3147 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3074 templates/js/translated/part.js:2140 +#: part/models.py:3152 templates/js/translated/part.js:2421 msgid "Requires Attachment" msgstr "" -#: part/models.py:3075 +#: part/models.py:3153 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3116 +#: part/models.py:3194 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3124 +#: part/models.py:3202 msgid "Parameter Name" msgstr "" -#: part/models.py:3128 +#: part/models.py:3206 msgid "Parameter Units" msgstr "" -#: part/models.py:3133 +#: part/models.py:3211 msgid "Parameter description" msgstr "" -#: part/models.py:3166 +#: part/models.py:3244 msgid "Parent Part" msgstr "" -#: part/models.py:3168 part/models.py:3216 part/models.py:3217 -#: templates/InvenTree/settings/settings.html:224 +#: part/models.py:3246 part/models.py:3294 part/models.py:3295 +#: templates/InvenTree/settings/settings.html:225 msgid "Parameter Template" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Data" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Parameter Value" msgstr "" -#: part/models.py:3221 templates/InvenTree/settings/settings.html:233 +#: part/models.py:3299 templates/InvenTree/settings/settings.html:234 msgid "Default Value" msgstr "" -#: part/models.py:3222 +#: part/models.py:3300 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3259 +#: part/models.py:3337 msgid "Part ID or part name" msgstr "" -#: part/models.py:3263 +#: part/models.py:3341 msgid "Unique part ID value" msgstr "" -#: part/models.py:3271 +#: part/models.py:3349 msgid "Part IPN value" msgstr "" -#: part/models.py:3274 +#: part/models.py:3352 msgid "Level" msgstr "" -#: part/models.py:3275 +#: part/models.py:3353 msgid "BOM level" msgstr "" -#: part/models.py:3344 +#: part/models.py:3422 msgid "Select parent part" msgstr "" -#: part/models.py:3352 +#: part/models.py:3430 msgid "Sub part" msgstr "" -#: part/models.py:3353 +#: part/models.py:3431 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:3359 +#: part/models.py:3437 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:3363 part/templates/part/upload_bom.html:58 +#: part/models.py:3441 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:933 templates/js/translated/bom.js:986 #: templates/js/translated/build.js:1868 #: templates/js/translated/table_filters.js:84 @@ -5236,189 +5303,189 @@ msgstr "" msgid "Optional" msgstr "" -#: part/models.py:3364 +#: part/models.py:3442 msgid "This BOM item is optional" msgstr "" -#: part/models.py:3369 templates/js/translated/bom.js:929 +#: part/models.py:3447 templates/js/translated/bom.js:929 #: templates/js/translated/bom.js:995 templates/js/translated/build.js:1859 #: templates/js/translated/table_filters.js:88 msgid "Consumable" msgstr "" -#: part/models.py:3370 +#: part/models.py:3448 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:3374 part/templates/part/upload_bom.html:55 +#: part/models.py:3452 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:3375 +#: part/models.py:3453 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:3378 +#: part/models.py:3456 msgid "BOM item reference" msgstr "" -#: part/models.py:3381 +#: part/models.py:3459 msgid "BOM item notes" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "Checksum" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "BOM line checksum" msgstr "" -#: part/models.py:3387 part/templates/part/upload_bom.html:57 +#: part/models.py:3465 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1012 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:108 msgid "Inherited" msgstr "" -#: part/models.py:3388 +#: part/models.py:3466 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:3393 part/templates/part/upload_bom.html:56 +#: part/models.py:3471 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1004 msgid "Allow Variants" msgstr "" -#: part/models.py:3394 +#: part/models.py:3472 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:3480 stock/models.py:558 +#: part/models.py:3558 stock/models.py:558 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:3489 part/models.py:3491 +#: part/models.py:3567 part/models.py:3569 msgid "Sub part must be specified" msgstr "" -#: part/models.py:3618 +#: part/models.py:3696 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:3639 +#: part/models.py:3717 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:3652 +#: part/models.py:3730 msgid "Parent BOM item" msgstr "" -#: part/models.py:3660 +#: part/models.py:3738 msgid "Substitute part" msgstr "" -#: part/models.py:3675 +#: part/models.py:3753 msgid "Part 1" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Part 2" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Select Related Part" msgstr "" -#: part/models.py:3697 +#: part/models.py:3775 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:3701 +#: part/models.py:3779 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:155 part/serializers.py:183 stock/serializers.py:183 +#: part/serializers.py:157 part/serializers.py:185 stock/serializers.py:183 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:543 +#: part/serializers.py:584 msgid "Update" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:585 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:854 +#: part/serializers.py:895 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:862 +#: part/serializers.py:903 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:863 +#: part/serializers.py:904 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:868 +#: part/serializers.py:909 msgid "Include Inherited" msgstr "" -#: part/serializers.py:869 +#: part/serializers.py:910 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:874 +#: part/serializers.py:915 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:875 +#: part/serializers.py:916 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:921 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:881 +#: part/serializers.py:922 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:962 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:922 +#: part/serializers.py:963 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:952 +#: part/serializers.py:993 msgid "No part column specified" msgstr "" -#: part/serializers.py:995 +#: part/serializers.py:1036 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:998 +#: part/serializers.py:1039 msgid "No matching part found" msgstr "" -#: part/serializers.py:1001 +#: part/serializers.py:1042 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1010 +#: part/serializers.py:1051 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1059 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1039 +#: part/serializers.py:1080 msgid "At least one BOM item is required" msgstr "" @@ -5450,7 +5517,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:267 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:290 msgid "BOM actions" msgstr "" @@ -5507,8 +5574,8 @@ msgstr "" msgid "New Part" msgstr "" -#: part/templates/part/category.html:169 part/templates/part/detail.html:366 -#: part/templates/part/detail.html:397 +#: part/templates/part/category.html:169 part/templates/part/detail.html:389 +#: part/templates/part/detail.html:420 msgid "Options" msgstr "" @@ -5556,7 +5623,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:404 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:407 msgid "Duplicate Part" msgstr "" @@ -5593,118 +5660,128 @@ msgstr "" msgid "Refresh" msgstr "" -#: part/templates/part/detail.html:59 +#: part/templates/part/detail.html:65 +msgid "Add stocktake information" +msgstr "" + +#: part/templates/part/detail.html:66 part/templates/part/part_sidebar.html:49 +#: stock/admin.py:107 templates/js/translated/stock.js:1905 +msgid "Stocktake" +msgstr "" + +#: part/templates/part/detail.html:82 msgid "Part Test Templates" msgstr "" -#: part/templates/part/detail.html:64 +#: part/templates/part/detail.html:87 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:144 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:141 +#: part/templates/part/detail.html:164 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:156 +#: part/templates/part/detail.html:179 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:160 +#: part/templates/part/detail.html:183 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:161 +#: part/templates/part/detail.html:184 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:188 +#: part/templates/part/detail.html:211 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:225 part/templates/part/part_sidebar.html:52 +#: part/templates/part/detail.html:248 part/templates/part/part_sidebar.html:57 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:229 part/templates/part/detail.html:230 +#: part/templates/part/detail.html:252 part/templates/part/detail.html:253 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:250 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:273 part/templates/part/part_sidebar.html:17 +#: report/templates/report/inventree_bill_of_materials_report.html:100 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:255 +#: part/templates/part/detail.html:278 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:259 templates/js/translated/bom.js:309 +#: part/templates/part/detail.html:282 templates/js/translated/bom.js:309 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:261 +#: part/templates/part/detail.html:284 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:271 +#: part/templates/part/detail.html:294 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:272 templates/js/translated/part.js:276 +#: part/templates/part/detail.html:295 templates/js/translated/part.js:279 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:273 +#: part/templates/part/detail.html:296 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:278 part/templates/part/detail.html:279 +#: part/templates/part/detail.html:301 part/templates/part/detail.html:302 #: templates/js/translated/bom.js:1268 templates/js/translated/bom.js:1269 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:292 +#: part/templates/part/detail.html:315 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:310 +#: part/templates/part/detail.html:333 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:337 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:360 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:353 +#: part/templates/part/detail.html:376 msgid "Part Suppliers" msgstr "" -#: part/templates/part/detail.html:383 +#: part/templates/part/detail.html:406 msgid "Part Manufacturers" msgstr "" -#: part/templates/part/detail.html:399 +#: part/templates/part/detail.html:422 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:696 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:704 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:796 msgid "Add Test Result Template" msgstr "" #: part/templates/part/import_wizard/ajax_part_upload.html:29 #: part/templates/part/import_wizard/part_upload.html:14 -msgid "Unsuffitient privileges." +msgid "Insufficient privileges." msgstr "" #: part/templates/part/import_wizard/part_upload.html:8 @@ -5715,6 +5792,34 @@ msgstr "" msgid "Import Parts from File" msgstr "" +#: part/templates/part/import_wizard/part_upload.html:31 +msgid "Requirements for part import" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "The part import file must contain the required named columns as provided in the " +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:89 +msgid "Download Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:92 +#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 +#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 +msgid "Format" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:93 +#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 +#: templates/js/translated/order.js:999 +msgid "Select file format" +msgstr "" + #: part/templates/part/part_app_base.html:12 msgid "Part List" msgstr "" @@ -5804,12 +5909,12 @@ msgstr "" #: templates/js/translated/company.js:660 #: templates/js/translated/company.js:921 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:677 templates/js/translated/part.js:755 +#: templates/js/translated/part.js:680 templates/js/translated/part.js:1026 msgid "Inactive" msgstr "" #: part/templates/part/part_base.html:165 -#: part/templates/part/part_base.html:666 +#: part/templates/part/part_base.html:680 msgid "Show Part Details" msgstr "" @@ -5837,38 +5942,38 @@ msgid "Minimum stock level" msgstr "" #: part/templates/part/part_base.html:330 templates/js/translated/bom.js:1032 -#: templates/js/translated/part.js:798 templates/js/translated/part.js:1604 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:1875 #: templates/js/translated/pricing.js:124 #: templates/js/translated/pricing.js:762 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:345 +#: part/templates/part/part_base.html:359 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:349 +#: part/templates/part/part_base.html:363 #: stock/templates/stock/item_base.html:331 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:449 +#: part/templates/part/part_base.html:463 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:495 +#: part/templates/part/part_base.html:509 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:512 +#: part/templates/part/part_base.html:526 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:564 +#: part/templates/part/part_base.html:578 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:660 +#: part/templates/part/part_base.html:674 msgid "Hide Part Details" msgstr "" @@ -5920,15 +6025,6 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" -#: part/templates/part/part_scheduling.html:13 -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:63 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:2043 templates/js/translated/pricing.js:537 -#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2516 -msgid "Date" -msgstr "" - #: part/templates/part/part_scheduling.html:14 msgid "Scheduled Quantity" msgstr "" @@ -5941,7 +6037,7 @@ msgstr "" msgid "Scheduling" msgstr "" -#: part/templates/part/part_sidebar.html:48 +#: part/templates/part/part_sidebar.html:53 msgid "Test Templates" msgstr "" @@ -5960,7 +6056,7 @@ msgstr "" #: part/templates/part/prices.html:25 stock/admin.py:106 #: stock/templates/stock/item_base.html:440 #: templates/js/translated/company.js:1039 -#: templates/js/translated/stock.js:1940 +#: templates/js/translated/stock.js:1935 msgid "Last Updated" msgstr "" @@ -6023,8 +6119,8 @@ msgstr "" msgid "Add Sell Price Break" msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:639 -#: templates/js/translated/part.js:1373 templates/js/translated/part.js:1375 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:1644 templates/js/translated/part.js:1646 msgid "No Stock" msgstr "" @@ -6087,27 +6183,32 @@ msgstr "" msgid "{title} v{version}" msgstr "" -#: part/views.py:109 +#: part/views.py:111 msgid "Match References" msgstr "" -#: part/views.py:354 +#: part/views.py:239 +#, python-brace-format +msgid "Can't import part {name} because there is no category assigned" +msgstr "" + +#: part/views.py:378 msgid "Part QR Code" msgstr "" -#: part/views.py:372 +#: part/views.py:396 msgid "Select Part Image" msgstr "" -#: part/views.py:398 +#: part/views.py:422 msgid "Updated part image" msgstr "" -#: part/views.py:401 +#: part/views.py:425 msgid "Part image not found" msgstr "" -#: part/views.py:493 +#: part/views.py:517 msgid "Part Pricing" msgstr "" @@ -6156,28 +6257,48 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:29 -#: plugin/builtin/integration/core_notifications.py:31 +#: plugin/builtin/integration/core_notifications.py:33 msgid "InvenTree contributors" msgstr "" -#: plugin/builtin/integration/core_notifications.py:30 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:32 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notificaton methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:37 -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:80 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:38 -#: plugin/builtin/integration/core_notifications.py:57 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:81 msgid "Allow sending of emails for event notifications" msgstr "" +#: plugin/builtin/integration/core_notifications.py:45 +msgid "Enable slack notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:46 +msgid "Allow sending of slack channel messages for event notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:51 +msgid "Slack incoming webhook url" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:52 +msgid "URL that is used to send messages to a slack channel" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:162 +msgid "Open link" +msgstr "" + #: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" @@ -6409,6 +6530,10 @@ msgstr "" msgid "Asset file description" msgstr "" +#: report/templates/report/inventree_bill_of_materials_report.html:133 +msgid "Materials needed" +msgstr "" + #: report/templates/report/inventree_build_order_base.html:146 msgid "Required For" msgstr "" @@ -6427,7 +6552,7 @@ msgstr "" #: templates/js/translated/build.js:1244 templates/js/translated/build.js:1745 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:121 templates/js/translated/order.js:3611 -#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:522 +#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:521 msgid "Serial Number" msgstr "" @@ -6459,8 +6584,9 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: stock/admin.py:87 templates/js/translated/stock.js:642 -#: templates/js/translated/stock.js:812 templates/js/translated/stock.js:2765 +#: stock/admin.py:87 templates/js/translated/part.js:749 +#: templates/js/translated/stock.js:641 templates/js/translated/stock.js:811 +#: templates/js/translated/stock.js:2760 msgid "Serial" msgstr "" @@ -6515,13 +6641,9 @@ msgstr "" msgid "Purchase Order ID" msgstr "" -#: stock/admin.py:107 templates/js/translated/stock.js:1910 -msgid "Stocktake" -msgstr "" - #: stock/admin.py:108 stock/models.py:764 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/stock.js:1924 +#: templates/js/translated/stock.js:1919 msgid "Expiry Date" msgstr "" @@ -6936,7 +7058,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2912 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2907 msgid "Install Stock Item" msgstr "" @@ -6944,7 +7066,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1561 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1560 msgid "Add Test Result" msgstr "" @@ -7117,10 +7239,6 @@ msgstr "" msgid "Stale" msgstr "" -#: stock/templates/stock/item_base.html:445 -msgid "Last Stocktake" -msgstr "" - #: stock/templates/stock/item_base.html:449 msgid "No stocktake performed" msgstr "" @@ -7394,7 +7512,8 @@ msgstr "" #: templates/InvenTree/notifications/notifications.html:10 #: templates/InvenTree/notifications/sidebar.html:5 -#: templates/InvenTree/settings/sidebar.html:17 templates/notifications.html:5 +#: templates/InvenTree/settings/sidebar.html:17 +#: templates/InvenTree/settings/sidebar.html:35 templates/notifications.html:5 msgid "Notifications" msgstr "" @@ -7475,6 +7594,14 @@ msgstr "" msgid "Open in new tab" msgstr "" +#: templates/InvenTree/settings/notifications.html:9 +msgid "Global Notification Settings" +msgstr "" + +#: templates/InvenTree/settings/notifications.html:18 +msgid "Slug" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -7492,7 +7619,7 @@ msgid "Part Parameter Templates" msgstr "" #: templates/InvenTree/settings/plugin.html:10 -#: templates/InvenTree/settings/sidebar.html:55 +#: templates/InvenTree/settings/sidebar.html:57 msgid "Plugin Settings" msgstr "" @@ -7501,7 +7628,7 @@ msgid "Changing the settings below require you to immediately restart the server msgstr "" #: templates/InvenTree/settings/plugin.html:38 -#: templates/InvenTree/settings/sidebar.html:57 +#: templates/InvenTree/settings/sidebar.html:59 msgid "Plugins" msgstr "" @@ -7669,67 +7796,67 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:117 +#: templates/InvenTree/settings/settings.html:118 msgid "Edit Plugin Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:119 +#: templates/InvenTree/settings/settings.html:120 msgid "Edit Notification Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:122 +#: templates/InvenTree/settings/settings.html:123 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:124 +#: templates/InvenTree/settings/settings.html:125 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:214 +#: templates/InvenTree/settings/settings.html:215 msgid "No category parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:236 -#: templates/InvenTree/settings/settings.html:361 -msgid "Edit Template" -msgstr "" - #: templates/InvenTree/settings/settings.html:237 #: templates/InvenTree/settings/settings.html:362 +msgid "Edit Template" +msgstr "" + +#: templates/InvenTree/settings/settings.html:238 +#: templates/InvenTree/settings/settings.html:363 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:277 +#: templates/InvenTree/settings/settings.html:278 msgid "Create Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:322 +#: templates/InvenTree/settings/settings.html:323 msgid "Delete Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:334 +#: templates/InvenTree/settings/settings.html:335 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:338 +#: templates/InvenTree/settings/settings.html:339 #: templates/js/translated/news.js:29 #: templates/js/translated/notification.js:36 msgid "ID" msgstr "" -#: templates/InvenTree/settings/settings.html:380 +#: templates/InvenTree/settings/settings.html:381 msgid "Create Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:399 +#: templates/InvenTree/settings/settings.html:400 msgid "Edit Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:413 +#: templates/InvenTree/settings/settings.html:414 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/InvenTree/settings/settings.html:421 +#: templates/InvenTree/settings/settings.html:422 msgid "Delete Part Parameter Template" msgstr "" @@ -7758,12 +7885,12 @@ msgid "Search Settings" msgstr "" #: templates/InvenTree/settings/sidebar.html:19 -#: templates/InvenTree/settings/sidebar.html:37 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Label Printing" msgstr "" #: templates/InvenTree/settings/sidebar.html:21 -#: templates/InvenTree/settings/sidebar.html:39 +#: templates/InvenTree/settings/sidebar.html:41 msgid "Reporting" msgstr "" @@ -7775,7 +7902,7 @@ msgstr "" msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:43 +#: templates/InvenTree/settings/sidebar.html:45 msgid "Categories" msgstr "" @@ -7945,64 +8072,64 @@ msgstr "" msgid "Do you really want to remove the selected email address?" msgstr "" -#: templates/InvenTree/settings/user_display.html:28 +#: templates/InvenTree/settings/user_display.html:29 msgid "Theme Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:38 +#: templates/InvenTree/settings/user_display.html:39 msgid "Select theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:49 +#: templates/InvenTree/settings/user_display.html:50 msgid "Set Theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:57 +#: templates/InvenTree/settings/user_display.html:58 msgid "Language Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:66 +#: templates/InvenTree/settings/user_display.html:67 msgid "Select language" msgstr "" -#: templates/InvenTree/settings/user_display.html:82 +#: templates/InvenTree/settings/user_display.html:83 #, python-format msgid "%(lang_translated)s%% translated" msgstr "" -#: templates/InvenTree/settings/user_display.html:84 +#: templates/InvenTree/settings/user_display.html:85 msgid "No translations available" msgstr "" -#: templates/InvenTree/settings/user_display.html:91 +#: templates/InvenTree/settings/user_display.html:92 msgid "Set Language" msgstr "" -#: templates/InvenTree/settings/user_display.html:94 +#: templates/InvenTree/settings/user_display.html:95 msgid "Some languages are not complete" msgstr "" -#: templates/InvenTree/settings/user_display.html:96 +#: templates/InvenTree/settings/user_display.html:97 msgid "Show only sufficent" msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "and hidden." msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "Show them too" msgstr "" -#: templates/InvenTree/settings/user_display.html:105 +#: templates/InvenTree/settings/user_display.html:106 msgid "Help the translation efforts!" msgstr "" -#: templates/InvenTree/settings/user_display.html:106 +#: templates/InvenTree/settings/user_display.html:107 msgid "Native language translation of the web application is community contributed via crowdin. Contributions are welcomed and encouraged." msgstr "" -#: templates/InvenTree/settings/user_display.html:107 +#: templates/InvenTree/settings/user_display.html:108 msgid "InvenTree Translation Project" msgstr "" @@ -8080,7 +8207,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:646 +#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:649 msgid "Confirm" msgstr "Bekräfta" @@ -8313,7 +8440,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 -#: templates/js/translated/part.js:2445 +#: templates/js/translated/part.js:2726 msgid "Minimum Quantity" msgstr "" @@ -8466,7 +8593,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1089 +#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1088 msgid "Remove stock item" msgstr "" @@ -8548,16 +8675,6 @@ msgstr "" msgid "Download BOM Template" msgstr "" -#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 -#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 -msgid "Format" -msgstr "" - -#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 -#: templates/js/translated/order.js:999 -msgid "Select file format" -msgstr "" - #: templates/js/translated/bom.js:320 msgid "Multi Level BOM" msgstr "" @@ -8688,7 +8805,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:1145 templates/js/translated/build.js:1923 -#: templates/js/translated/part.js:790 templates/js/translated/part.js:1572 +#: templates/js/translated/part.js:1061 templates/js/translated/part.js:1843 msgid "Includes variant stock" msgstr "" @@ -8773,13 +8890,13 @@ msgstr "" msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:317 templates/js/translated/stock.js:95 -#: templates/js/translated/stock.js:237 +#: templates/js/translated/build.js:317 templates/js/translated/stock.js:94 +#: templates/js/translated/stock.js:236 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:319 templates/js/translated/stock.js:97 -#: templates/js/translated/stock.js:239 +#: templates/js/translated/build.js:319 templates/js/translated/stock.js:96 +#: templates/js/translated/stock.js:238 msgid "Latest serial number" msgstr "" @@ -8987,9 +9104,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1466 -#: templates/js/translated/part.js:2003 templates/js/translated/stock.js:1725 -#: templates/js/translated/stock.js:2428 +#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1737 +#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1724 +#: templates/js/translated/stock.js:2423 msgid "Select" msgstr "" @@ -9001,7 +9118,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2695 +#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2690 msgid "No user information" msgstr "" @@ -9074,34 +9191,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:652 -#: templates/js/translated/company.js:913 templates/js/translated/part.js:661 -#: templates/js/translated/part.js:747 +#: templates/js/translated/company.js:913 templates/js/translated/part.js:664 +#: templates/js/translated/part.js:1018 msgid "Template part" msgstr "" #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:917 templates/js/translated/part.js:665 -#: templates/js/translated/part.js:751 +#: templates/js/translated/company.js:917 templates/js/translated/part.js:668 +#: templates/js/translated/part.js:1022 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:784 templates/js/translated/part.js:870 +#: templates/js/translated/company.js:784 templates/js/translated/part.js:1141 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:821 templates/js/translated/part.js:912 +#: templates/js/translated/company.js:821 templates/js/translated/part.js:1183 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:822 templates/js/translated/part.js:913 +#: templates/js/translated/company.js:822 templates/js/translated/part.js:1184 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:841 templates/js/translated/part.js:930 +#: templates/js/translated/company.js:841 templates/js/translated/part.js:1201 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:852 templates/js/translated/part.js:942 +#: templates/js/translated/company.js:852 templates/js/translated/part.js:1213 msgid "Delete Parameter" msgstr "" @@ -9181,61 +9298,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:369 templates/js/translated/forms.js:384 -#: templates/js/translated/forms.js:398 templates/js/translated/forms.js:412 +#: templates/js/translated/forms.js:372 templates/js/translated/forms.js:387 +#: templates/js/translated/forms.js:401 templates/js/translated/forms.js:415 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:371 +#: templates/js/translated/forms.js:374 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:386 +#: templates/js/translated/forms.js:389 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:400 +#: templates/js/translated/forms.js:403 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:414 +#: templates/js/translated/forms.js:417 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:672 +#: templates/js/translated/forms.js:675 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:773 +#: templates/js/translated/forms.js:776 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1266 templates/modals.html:19 +#: templates/js/translated/forms.js:1269 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1703 +#: templates/js/translated/forms.js:1706 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1919 templates/search.html:29 +#: templates/js/translated/forms.js:1922 templates/search.html:29 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2172 +#: templates/js/translated/forms.js:2175 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:2640 +#: templates/js/translated/forms.js:2643 msgid "Select Columns" msgstr "" @@ -9256,7 +9373,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1113 +#: templates/js/translated/stock.js:1112 msgid "Select Stock Items" msgstr "" @@ -9590,7 +9707,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2184 +#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2179 msgid "Stock Status" msgstr "" @@ -9614,7 +9731,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1982 templates/js/translated/part.js:983 +#: templates/js/translated/order.js:1982 templates/js/translated/part.js:1254 msgid "No purchase orders found" msgstr "" @@ -9647,8 +9764,8 @@ msgstr "" msgid "Total" msgstr "" -#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1085 -#: templates/js/translated/part.js:1137 +#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1356 +#: templates/js/translated/part.js:1408 msgid "Total Quantity" msgstr "" @@ -9666,11 +9783,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2388 templates/js/translated/order.js:3900 -#: templates/js/translated/part.js:1121 +#: templates/js/translated/part.js:1392 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1166 +#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1437 msgid "Receive line item" msgstr "" @@ -9791,7 +9908,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3623 templates/js/translated/order.js:3712 -#: templates/js/translated/stock.js:1641 +#: templates/js/translated/stock.js:1640 msgid "Shipped to customer" msgstr "" @@ -9835,334 +9952,358 @@ msgstr "" msgid "No matching lines" msgstr "" -#: templates/js/translated/part.js:52 +#: templates/js/translated/part.js:55 msgid "Part Attributes" msgstr "" -#: templates/js/translated/part.js:56 +#: templates/js/translated/part.js:59 msgid "Part Creation Options" msgstr "" -#: templates/js/translated/part.js:60 +#: templates/js/translated/part.js:63 msgid "Part Duplication Options" msgstr "" -#: templates/js/translated/part.js:64 +#: templates/js/translated/part.js:67 msgid "Supplier Options" msgstr "" -#: templates/js/translated/part.js:78 +#: templates/js/translated/part.js:81 msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:168 +#: templates/js/translated/part.js:171 msgid "Create Initial Stock" msgstr "" -#: templates/js/translated/part.js:169 +#: templates/js/translated/part.js:172 msgid "Create an initial stock item for this part" msgstr "" -#: templates/js/translated/part.js:176 +#: templates/js/translated/part.js:179 msgid "Initial Stock Quantity" msgstr "" -#: templates/js/translated/part.js:177 +#: templates/js/translated/part.js:180 msgid "Specify initial stock quantity for this part" msgstr "" -#: templates/js/translated/part.js:184 +#: templates/js/translated/part.js:187 msgid "Select destination stock location" msgstr "" -#: templates/js/translated/part.js:202 +#: templates/js/translated/part.js:205 msgid "Copy Category Parameters" msgstr "" -#: templates/js/translated/part.js:203 +#: templates/js/translated/part.js:206 msgid "Copy parameter templates from selected part category" msgstr "" -#: templates/js/translated/part.js:211 +#: templates/js/translated/part.js:214 msgid "Add Supplier Data" msgstr "" -#: templates/js/translated/part.js:212 +#: templates/js/translated/part.js:215 msgid "Create initial supplier data for this part" msgstr "" -#: templates/js/translated/part.js:268 +#: templates/js/translated/part.js:271 msgid "Copy Image" msgstr "" -#: templates/js/translated/part.js:269 +#: templates/js/translated/part.js:272 msgid "Copy image from original part" msgstr "" -#: templates/js/translated/part.js:277 +#: templates/js/translated/part.js:280 msgid "Copy bill of materials from original part" msgstr "" -#: templates/js/translated/part.js:284 +#: templates/js/translated/part.js:287 msgid "Copy Parameters" msgstr "" -#: templates/js/translated/part.js:285 +#: templates/js/translated/part.js:288 msgid "Copy parameter data from original part" msgstr "" -#: templates/js/translated/part.js:298 +#: templates/js/translated/part.js:301 msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:313 templates/js/translated/stock.js:122 +#: templates/js/translated/part.js:316 templates/js/translated/stock.js:121 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:329 +#: templates/js/translated/part.js:332 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:342 +#: templates/js/translated/part.js:345 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:347 +#: templates/js/translated/part.js:350 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:359 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:360 +#: templates/js/translated/part.js:363 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:368 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:394 +#: templates/js/translated/part.js:397 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:396 +#: templates/js/translated/part.js:399 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:407 +#: templates/js/translated/part.js:410 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:459 +#: templates/js/translated/part.js:462 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:460 +#: templates/js/translated/part.js:463 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:477 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:476 +#: templates/js/translated/part.js:479 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:477 +#: templates/js/translated/part.js:480 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:478 +#: templates/js/translated/part.js:481 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:485 +#: templates/js/translated/part.js:488 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:521 +#: templates/js/translated/part.js:524 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:523 +#: templates/js/translated/part.js:526 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:531 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:530 +#: templates/js/translated/part.js:533 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:547 +#: templates/js/translated/part.js:550 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:560 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:560 +#: templates/js/translated/part.js:563 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:585 +#: templates/js/translated/part.js:588 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1554 +#: templates/js/translated/part.js:612 templates/js/translated/part.js:1825 #: templates/js/translated/table_filters.js:488 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:622 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:653 templates/js/translated/part.js:739 +#: templates/js/translated/part.js:656 templates/js/translated/part.js:1010 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:657 templates/js/translated/part.js:743 +#: templates/js/translated/part.js:660 templates/js/translated/part.js:1014 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:669 +#: templates/js/translated/part.js:672 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:673 +#: templates/js/translated/part.js:676 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:815 +#: templates/js/translated/part.js:761 +msgid "Stock item has not been checked recently" +msgstr "" + +#: templates/js/translated/part.js:769 +msgid "Update item" +msgstr "" + +#: templates/js/translated/part.js:770 +msgid "Delete item" +msgstr "" + +#: templates/js/translated/part.js:871 +msgid "No stocktake information available" +msgstr "" + +#: templates/js/translated/part.js:910 templates/js/translated/part.js:933 +msgid "Edit Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:914 templates/js/translated/part.js:945 +msgid "Delete Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:1086 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1236 +#: templates/js/translated/part.js:1507 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1260 +#: templates/js/translated/part.js:1531 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1327 templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1598 templates/js/translated/part.js:1936 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1521 +#: templates/js/translated/part.js:1792 msgid "No category" msgstr "" -#: templates/js/translated/part.js:1552 +#: templates/js/translated/part.js:1823 msgid "No stock" msgstr "" -#: templates/js/translated/part.js:1576 +#: templates/js/translated/part.js:1847 msgid "Allocated to build orders" msgstr "" -#: templates/js/translated/part.js:1580 +#: templates/js/translated/part.js:1851 msgid "Allocated to sales orders" msgstr "" -#: templates/js/translated/part.js:1679 templates/js/translated/part.js:1922 -#: templates/js/translated/stock.js:2387 +#: templates/js/translated/part.js:1960 templates/js/translated/part.js:2203 +#: templates/js/translated/stock.js:2382 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1695 +#: templates/js/translated/part.js:1976 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1761 +#: templates/js/translated/part.js:2042 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1766 +#: templates/js/translated/part.js:2047 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1771 +#: templates/js/translated/part.js:2052 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1784 +#: templates/js/translated/part.js:2065 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1942 templates/js/translated/stock.js:2407 +#: templates/js/translated/part.js:2223 templates/js/translated/stock.js:2402 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2022 +#: templates/js/translated/part.js:2303 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2038 +#: templates/js/translated/part.js:2319 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2383 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2153 templates/js/translated/stock.js:1338 +#: templates/js/translated/part.js:2434 templates/js/translated/stock.js:1337 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2154 templates/js/translated/stock.js:1339 -#: templates/js/translated/stock.js:1599 +#: templates/js/translated/part.js:2435 templates/js/translated/stock.js:1338 +#: templates/js/translated/stock.js:1598 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2441 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2182 +#: templates/js/translated/part.js:2463 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2196 +#: templates/js/translated/part.js:2477 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2277 templates/js/translated/part.js:2278 +#: templates/js/translated/part.js:2558 templates/js/translated/part.js:2559 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2280 +#: templates/js/translated/part.js:2561 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:2286 +#: templates/js/translated/part.js:2567 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:2336 +#: templates/js/translated/part.js:2617 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2623 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:2438 +#: templates/js/translated/part.js:2719 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2454 +#: templates/js/translated/part.js:2735 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:2499 +#: templates/js/translated/part.js:2780 msgid "Minimum Stock Level" msgstr "" @@ -10290,388 +10431,388 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:74 +#: templates/js/translated/stock.js:73 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:104 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:114 +#: templates/js/translated/stock.js:113 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:148 +#: templates/js/translated/stock.js:147 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:163 +#: templates/js/translated/stock.js:162 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:177 +#: templates/js/translated/stock.js:176 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:184 +#: templates/js/translated/stock.js:183 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:193 +#: templates/js/translated/stock.js:192 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:197 +#: templates/js/translated/stock.js:196 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:201 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:256 +#: templates/js/translated/stock.js:255 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:298 +#: templates/js/translated/stock.js:297 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:304 +#: templates/js/translated/stock.js:303 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:368 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:389 +#: templates/js/translated/stock.js:388 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:405 +#: templates/js/translated/stock.js:404 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:410 +#: templates/js/translated/stock.js:409 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:431 +#: templates/js/translated/stock.js:430 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:481 +#: templates/js/translated/stock.js:480 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:494 +#: templates/js/translated/stock.js:493 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:519 +#: templates/js/translated/stock.js:518 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:523 templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:522 templates/js/translated/stock.js:523 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:540 +#: templates/js/translated/stock.js:539 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:560 +#: templates/js/translated/stock.js:559 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:568 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:692 +#: templates/js/translated/stock.js:691 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:693 +#: templates/js/translated/stock.js:692 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:770 +#: templates/js/translated/stock.js:769 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:771 +#: templates/js/translated/stock.js:770 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:773 +#: templates/js/translated/stock.js:772 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:774 +#: templates/js/translated/stock.js:773 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:863 +#: templates/js/translated/stock.js:862 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:864 +#: templates/js/translated/stock.js:863 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:958 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:959 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:966 +#: templates/js/translated/stock.js:965 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:967 +#: templates/js/translated/stock.js:966 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:971 +#: templates/js/translated/stock.js:970 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:972 +#: templates/js/translated/stock.js:971 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:976 +#: templates/js/translated/stock.js:975 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:977 users/models.py:220 +#: templates/js/translated/stock.js:976 users/models.py:221 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:981 +#: templates/js/translated/stock.js:980 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1114 +#: templates/js/translated/stock.js:1113 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1141 +#: templates/js/translated/stock.js:1140 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1277 +#: templates/js/translated/stock.js:1276 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1279 +#: templates/js/translated/stock.js:1278 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1284 +#: templates/js/translated/stock.js:1283 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1331 +#: templates/js/translated/stock.js:1330 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1334 +#: templates/js/translated/stock.js:1333 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1360 +#: templates/js/translated/stock.js:1359 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1417 +#: templates/js/translated/stock.js:1416 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1582 +#: templates/js/translated/stock.js:1581 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1604 +#: templates/js/translated/stock.js:1603 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1633 +#: templates/js/translated/stock.js:1632 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1637 +#: templates/js/translated/stock.js:1636 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1645 +#: templates/js/translated/stock.js:1644 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1651 +#: templates/js/translated/stock.js:1650 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1820 +#: templates/js/translated/stock.js:1815 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1825 +#: templates/js/translated/stock.js:1820 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1828 +#: templates/js/translated/stock.js:1823 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1831 +#: templates/js/translated/stock.js:1826 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1833 +#: templates/js/translated/stock.js:1828 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1835 +#: templates/js/translated/stock.js:1830 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1838 +#: templates/js/translated/stock.js:1833 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1837 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1844 +#: templates/js/translated/stock.js:1839 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1846 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1853 +#: templates/js/translated/stock.js:1848 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1855 +#: templates/js/translated/stock.js:1850 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1859 +#: templates/js/translated/stock.js:1854 #: templates/js/translated/table_filters.js:216 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1989 +#: templates/js/translated/stock.js:1984 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2026 +#: templates/js/translated/stock.js:2021 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2199 +#: templates/js/translated/stock.js:2194 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2213 +#: templates/js/translated/stock.js:2208 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2214 +#: templates/js/translated/stock.js:2209 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2446 +#: templates/js/translated/stock.js:2441 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2536 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2557 +#: templates/js/translated/stock.js:2552 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2579 +#: templates/js/translated/stock.js:2574 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2598 +#: templates/js/translated/stock.js:2593 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2617 +#: templates/js/translated/stock.js:2612 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2635 +#: templates/js/translated/stock.js:2630 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2658 +#: templates/js/translated/stock.js:2653 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2666 +#: templates/js/translated/stock.js:2661 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2737 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2793 templates/js/translated/stock.js:2829 +#: templates/js/translated/stock.js:2788 templates/js/translated/stock.js:2824 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2845 +#: templates/js/translated/stock.js:2840 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2866 +#: templates/js/translated/stock.js:2861 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2867 +#: templates/js/translated/stock.js:2862 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2869 +#: templates/js/translated/stock.js:2864 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2870 +#: templates/js/translated/stock.js:2865 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:2866 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2872 +#: templates/js/translated/stock.js:2867 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2885 +#: templates/js/translated/stock.js:2880 msgid "Select part to install" msgstr "" @@ -10696,7 +10837,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:92 -#: templates/js/translated/table_filters.js:516 +#: templates/js/translated/table_filters.js:520 msgid "Has Pricing" msgstr "" @@ -10912,6 +11053,10 @@ msgstr "" msgid "Purchasable" msgstr "" +#: templates/js/translated/table_filters.js:504 +msgid "Has stocktake entries" +msgstr "" + #: templates/js/translated/tables.js:70 msgid "Display calendar view" msgstr "" @@ -11206,35 +11351,35 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:207 +#: users/models.py:208 msgid "Permission set" msgstr "" -#: users/models.py:215 +#: users/models.py:216 msgid "Group" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "View" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "Permission to view items" msgstr "" -#: users/models.py:220 +#: users/models.py:221 msgid "Permission to add items" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Change" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Permissions to edit items" msgstr "" -#: users/models.py:224 +#: users/models.py:225 msgid "Permission to delete items" msgstr "" diff --git a/InvenTree/locale/th/LC_MESSAGES/django.po b/InvenTree/locale/th/LC_MESSAGES/django.po index 45a357ee41..17c8b665c6 100644 --- a/InvenTree/locale/th/LC_MESSAGES/django.po +++ b/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: 2022-12-30 20:46+0000\n" -"PO-Revision-Date: 2022-12-31 11:30\n" +"POT-Creation-Date: 2023-01-01 11:05+0000\n" +"PO-Revision-Date: 2023-01-01 11:26\n" "Last-Translator: \n" "Language-Team: Thai\n" "Language: th_TH\n" @@ -34,7 +34,7 @@ msgstr "" #: company/templates/company/sidebar.html:25 order/models.py:943 #: order/templates/order/po_sidebar.html:11 #: order/templates/order/so_sidebar.html:17 part/admin.py:27 -#: part/templates/part/part_sidebar.html:57 +#: part/models.py:2932 part/templates/part/part_sidebar.html:62 #: report/templates/report/inventree_build_order_base.html:172 #: stock/admin.py:103 stock/models.py:2061 stock/models.py:2169 #: stock/serializers.py:321 stock/serializers.py:454 stock/serializers.py:535 @@ -44,8 +44,8 @@ msgstr "" #: templates/js/translated/company.js:1023 #: templates/js/translated/order.js:2435 templates/js/translated/order.js:2569 #: templates/js/translated/order.js:3067 templates/js/translated/order.js:4004 -#: templates/js/translated/order.js:4385 templates/js/translated/stock.js:1413 -#: templates/js/translated/stock.js:2020 +#: templates/js/translated/order.js:4385 templates/js/translated/part.js:882 +#: templates/js/translated/stock.js:1412 templates/js/translated/stock.js:2015 msgid "Notes" msgstr "" @@ -204,18 +204,18 @@ msgstr "" msgid "Select file to attach" msgstr "" -#: InvenTree/models.py:412 common/models.py:2366 company/models.py:129 +#: InvenTree/models.py:412 common/models.py:2373 company/models.py:129 #: company/models.py:281 company/models.py:516 order/models.py:85 -#: order/models.py:1282 part/admin.py:25 part/models.py:865 +#: order/models.py:1282 part/admin.py:25 part/models.py:866 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: stock/admin.py:102 templates/js/translated/company.js:692 #: templates/js/translated/company.js:1012 -#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1615 +#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1886 msgid "Link" msgstr "" -#: InvenTree/models.py:413 build/models.py:290 part/models.py:866 +#: InvenTree/models.py:413 build/models.py:290 part/models.py:867 #: stock/models.py:716 msgid "Link to external URL" msgstr "" @@ -229,12 +229,13 @@ msgstr "" msgid "File comment" msgstr "" -#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1810 -#: common/models.py:1811 common/models.py:2034 common/models.py:2035 -#: common/models.py:2296 common/models.py:2297 part/models.py:2948 -#: part/models.py:2968 plugin/models.py:264 plugin/models.py:265 +#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1817 +#: common/models.py:1818 common/models.py:2041 common/models.py:2042 +#: common/models.py:2303 common/models.py:2304 part/models.py:2940 +#: part/models.py:3026 part/models.py:3046 plugin/models.py:264 +#: plugin/models.py:265 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2689 +#: templates/js/translated/stock.js:2684 msgid "User" msgstr "" @@ -271,19 +272,20 @@ msgstr "" msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2020 -#: company/models.py:363 label/models.py:101 part/models.py:809 -#: part/models.py:3123 plugin/models.py:94 report/models.py:152 +#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2027 +#: company/models.py:363 label/models.py:101 part/models.py:810 +#: part/models.py:3201 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 +#: templates/InvenTree/settings/notifications.html:17 #: templates/InvenTree/settings/plugin.html:60 #: templates/InvenTree/settings/plugin.html:104 #: templates/InvenTree/settings/plugin_settings.html:23 -#: templates/InvenTree/settings/settings.html:344 +#: templates/InvenTree/settings/settings.html:345 #: templates/js/translated/company.js:581 #: templates/js/translated/company.js:794 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:711 templates/js/translated/part.js:880 -#: templates/js/translated/part.js:2010 templates/js/translated/stock.js:2434 +#: templates/js/translated/part.js:982 templates/js/translated/part.js:1151 +#: templates/js/translated/part.js:2291 templates/js/translated/stock.js:2429 msgid "Name" msgstr "" @@ -292,24 +294,25 @@ msgstr "" #: company/models.py:522 company/templates/company/company_base.html:72 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:108 label/models.py:108 -#: order/models.py:83 part/admin.py:141 part/admin.py:222 part/models.py:832 -#: part/models.py:3132 part/templates/part/category.html:75 +#: order/models.py:83 part/admin.py:174 part/admin.py:255 part/models.py:833 +#: part/models.py:3210 part/templates/part/category.html:75 #: part/templates/part/part_base.html:172 #: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/admin.py:25 stock/templates/stock/location.html:117 +#: templates/InvenTree/settings/notifications.html:19 #: templates/InvenTree/settings/plugin_settings.html:28 -#: templates/InvenTree/settings/settings.html:355 +#: templates/InvenTree/settings/settings.html:356 #: templates/js/translated/bom.js:592 templates/js/translated/bom.js:895 #: templates/js/translated/build.js:2596 templates/js/translated/company.js:445 #: templates/js/translated/company.js:703 #: templates/js/translated/company.js:987 templates/js/translated/order.js:2030 #: templates/js/translated/order.js:2267 templates/js/translated/order.js:2845 -#: templates/js/translated/part.js:773 templates/js/translated/part.js:1223 -#: templates/js/translated/part.js:1497 templates/js/translated/part.js:2046 -#: templates/js/translated/part.js:2121 templates/js/translated/stock.js:1787 -#: templates/js/translated/stock.js:2466 templates/js/translated/stock.js:2526 +#: templates/js/translated/part.js:1044 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1768 templates/js/translated/part.js:2327 +#: templates/js/translated/part.js:2402 templates/js/translated/stock.js:1782 +#: templates/js/translated/stock.js:2461 templates/js/translated/stock.js:2521 msgid "Description" msgstr "" @@ -322,7 +325,7 @@ msgid "parent" msgstr "" #: InvenTree/models.py:580 InvenTree/models.py:581 -#: templates/js/translated/part.js:2055 templates/js/translated/stock.js:2475 +#: templates/js/translated/part.js:2336 templates/js/translated/stock.js:2470 msgid "Path" msgstr "" @@ -354,7 +357,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:58 part/models.py:3468 +#: InvenTree/serializers.py:58 part/models.py:3546 msgid "Must be a valid number" msgstr "" @@ -421,107 +424,107 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:639 +#: InvenTree/settings.py:642 msgid "Czech" msgstr "" -#: InvenTree/settings.py:640 +#: InvenTree/settings.py:643 msgid "Danish" msgstr "" -#: InvenTree/settings.py:641 +#: InvenTree/settings.py:644 msgid "German" msgstr "" -#: InvenTree/settings.py:642 +#: InvenTree/settings.py:645 msgid "Greek" msgstr "" -#: InvenTree/settings.py:643 +#: InvenTree/settings.py:646 msgid "English" msgstr "" -#: InvenTree/settings.py:644 +#: InvenTree/settings.py:647 msgid "Spanish" msgstr "" -#: InvenTree/settings.py:645 +#: InvenTree/settings.py:648 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:646 +#: InvenTree/settings.py:649 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:647 +#: InvenTree/settings.py:650 msgid "French" msgstr "" -#: InvenTree/settings.py:648 +#: InvenTree/settings.py:651 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:649 +#: InvenTree/settings.py:652 msgid "Hungarian" msgstr "" -#: InvenTree/settings.py:650 +#: InvenTree/settings.py:653 msgid "Italian" msgstr "" -#: InvenTree/settings.py:651 +#: InvenTree/settings.py:654 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:652 +#: InvenTree/settings.py:655 msgid "Korean" msgstr "" -#: InvenTree/settings.py:653 +#: InvenTree/settings.py:656 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:654 +#: InvenTree/settings.py:657 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:655 +#: InvenTree/settings.py:658 msgid "Polish" msgstr "" -#: InvenTree/settings.py:656 +#: InvenTree/settings.py:659 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:657 +#: InvenTree/settings.py:660 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:658 +#: InvenTree/settings.py:661 msgid "Russian" msgstr "" -#: InvenTree/settings.py:659 +#: InvenTree/settings.py:662 msgid "Slovenian" msgstr "" -#: InvenTree/settings.py:660 +#: InvenTree/settings.py:663 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:661 +#: InvenTree/settings.py:664 msgid "Thai" msgstr "" -#: InvenTree/settings.py:662 +#: InvenTree/settings.py:665 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:663 +#: InvenTree/settings.py:666 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:664 +#: InvenTree/settings.py:667 msgid "Chinese" msgstr "" @@ -652,7 +655,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2124 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2119 msgid "Merged stock items" msgstr "" @@ -756,7 +759,7 @@ msgstr "" #: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:141 -#: templates/InvenTree/settings/sidebar.html:47 +#: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:254 users/models.py:41 msgid "Build Orders" msgstr "" @@ -766,8 +769,9 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:155 order/models.py:241 order/models.py:651 -#: order/models.py:941 part/admin.py:224 part/models.py:3378 +#: order/models.py:941 part/admin.py:257 part/models.py:3456 #: part/templates/part/upload_bom.html:54 +#: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 #: templates/js/translated/bom.js:729 templates/js/translated/bom.js:905 @@ -793,13 +797,15 @@ msgstr "" #: build/models.py:180 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:684 #: order/models.py:1038 order/models.py:1149 order/models.py:1150 -#: part/models.py:381 part/models.py:2781 part/models.py:2894 -#: part/models.py:2909 part/models.py:2928 part/models.py:2946 -#: part/models.py:3045 part/models.py:3166 part/models.py:3258 -#: part/models.py:3343 part/models.py:3659 part/serializers.py:853 -#: part/templates/part/part_app_base.html:8 +#: part/models.py:382 part/models.py:2799 part/models.py:2912 +#: part/models.py:2972 part/models.py:2987 part/models.py:3006 +#: part/models.py:3024 part/models.py:3123 part/models.py:3244 +#: part/models.py:3336 part/models.py:3421 part/models.py:3737 +#: part/serializers.py:894 part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 +#: report/templates/report/inventree_bill_of_materials_report.html:110 +#: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_base.html:109 #: report/templates/report/inventree_po_report.html:89 #: report/templates/report/inventree_so_report.html:90 stock/serializers.py:90 @@ -819,12 +825,12 @@ msgstr "" #: templates/js/translated/order.js:1172 templates/js/translated/order.js:1676 #: templates/js/translated/order.js:2252 templates/js/translated/order.js:3199 #: templates/js/translated/order.js:3595 templates/js/translated/order.js:3825 -#: templates/js/translated/part.js:1208 templates/js/translated/part.js:1280 -#: templates/js/translated/part.js:1474 templates/js/translated/pricing.js:102 -#: templates/js/translated/stock.js:618 templates/js/translated/stock.js:783 -#: templates/js/translated/stock.js:993 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2552 templates/js/translated/stock.js:2747 -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/part.js:1479 templates/js/translated/part.js:1551 +#: templates/js/translated/part.js:1745 templates/js/translated/pricing.js:102 +#: templates/js/translated/stock.js:617 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:992 templates/js/translated/stock.js:1738 +#: templates/js/translated/stock.js:2547 templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2879 msgid "Part" msgstr "" @@ -890,7 +896,7 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:252 order/models.py:87 part/models.py:1001 +#: build/models.py:252 order/models.py:87 part/models.py:1002 #: part/templates/part/part_base.html:318 templates/js/translated/order.js:2858 msgid "Creation Date" msgstr "" @@ -923,7 +929,7 @@ msgstr "" #: build/models.py:283 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:101 #: order/templates/order/order_base.html:185 -#: order/templates/order/sales_order_base.html:183 part/models.py:1005 +#: order/templates/order/sales_order_base.html:183 part/models.py:1006 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2658 templates/js/translated/order.js:2064 msgid "Responsible" @@ -936,7 +942,7 @@ msgstr "" #: build/models.py:289 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:188 -#: part/templates/part/part_base.html:376 stock/models.py:714 +#: part/templates/part/part_base.html:390 stock/models.py:714 #: stock/templates/stock/item_base.html:203 msgid "External Link" msgstr "" @@ -1011,8 +1017,8 @@ msgstr "" #: templates/js/translated/order.js:107 templates/js/translated/order.js:3200 #: templates/js/translated/order.js:3502 templates/js/translated/order.js:3507 #: templates/js/translated/order.js:3602 templates/js/translated/order.js:3694 -#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 -#: templates/js/translated/stock.js:2625 +#: templates/js/translated/part.js:803 templates/js/translated/stock.js:618 +#: templates/js/translated/stock.js:783 templates/js/translated/stock.js:2620 msgid "Stock Item" msgstr "" @@ -1022,12 +1028,13 @@ msgstr "" #: build/models.py:1364 build/serializers.py:192 #: build/templates/build/build_base.html:85 -#: build/templates/build/detail.html:34 common/models.py:1842 +#: build/templates/build/detail.html:34 common/models.py:1849 #: order/models.py:934 order/models.py:1460 order/serializers.py:1206 -#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:223 -#: part/forms.py:40 part/models.py:3359 +#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:256 +#: part/forms.py:40 part/models.py:2919 part/models.py:3437 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 +#: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_base.html:113 #: report/templates/report/inventree_po_report.html:90 #: report/templates/report/inventree_so_report.html:91 @@ -1049,13 +1056,14 @@ msgstr "" #: templates/js/translated/order.js:3201 templates/js/translated/order.js:3521 #: templates/js/translated/order.js:3608 templates/js/translated/order.js:3700 #: templates/js/translated/order.js:3847 templates/js/translated/order.js:4338 -#: templates/js/translated/part.js:1078 templates/js/translated/part.js:2568 +#: templates/js/translated/part.js:805 templates/js/translated/part.js:876 +#: templates/js/translated/part.js:1349 templates/js/translated/part.js:2849 #: templates/js/translated/pricing.js:114 #: templates/js/translated/pricing.js:207 #: templates/js/translated/pricing.js:255 -#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:490 -#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:814 -#: templates/js/translated/stock.js:2674 templates/js/translated/stock.js:2759 +#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:489 +#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:813 +#: templates/js/translated/stock.js:2669 templates/js/translated/stock.js:2754 msgid "Quantity" msgstr "" @@ -1097,8 +1105,8 @@ msgid "Enter quantity for build output" msgstr "" #: build/serializers.py:207 build/serializers.py:683 order/models.py:327 -#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:645 -#: part/serializers.py:1016 stock/models.py:574 stock/models.py:1312 +#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:686 +#: part/serializers.py:1057 stock/models.py:574 stock/models.py:1312 #: stock/serializers.py:294 msgid "Quantity must be greater than zero" msgstr "" @@ -1113,7 +1121,7 @@ msgstr "" #: build/serializers.py:231 order/serializers.py:463 order/serializers.py:1210 #: stock/serializers.py:303 templates/js/translated/order.js:1545 -#: templates/js/translated/stock.js:303 templates/js/translated/stock.js:491 +#: templates/js/translated/stock.js:302 templates/js/translated/stock.js:490 msgid "Serial Numbers" msgstr "" @@ -1146,9 +1154,10 @@ msgstr "" #: templates/js/translated/build.js:1759 templates/js/translated/order.js:1572 #: templates/js/translated/order.js:3514 templates/js/translated/order.js:3619 #: templates/js/translated/order.js:3627 templates/js/translated/order.js:3708 -#: templates/js/translated/part.js:183 templates/js/translated/stock.js:620 -#: templates/js/translated/stock.js:785 templates/js/translated/stock.js:995 -#: templates/js/translated/stock.js:1895 templates/js/translated/stock.js:2566 +#: templates/js/translated/part.js:186 templates/js/translated/part.js:804 +#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 +#: templates/js/translated/stock.js:994 templates/js/translated/stock.js:1890 +#: templates/js/translated/stock.js:2561 msgid "Location" msgstr "" @@ -1162,8 +1171,8 @@ msgstr "" #: stock/templates/stock/item_base.html:421 #: templates/js/translated/barcode.js:237 templates/js/translated/build.js:2630 #: templates/js/translated/order.js:1681 templates/js/translated/order.js:2034 -#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1870 -#: templates/js/translated/stock.js:2643 templates/js/translated/stock.js:2775 +#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:2638 templates/js/translated/stock.js:2770 msgid "Status" msgstr "" @@ -1239,8 +1248,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:595 build/serializers.py:640 part/models.py:3495 -#: part/models.py:3651 +#: build/serializers.py:595 build/serializers.py:640 part/models.py:3573 +#: part/models.py:3729 msgid "BOM Item" msgstr "" @@ -1406,7 +1415,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2670 templates/js/translated/order.js:2051 #: templates/js/translated/order.js:2382 templates/js/translated/order.js:2866 -#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1093 +#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1364 msgid "Target Date" msgstr "" @@ -1484,8 +1493,8 @@ msgstr "" #: stock/templates/stock/item_base.html:168 #: templates/js/translated/build.js:1250 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:1884 -#: templates/js/translated/stock.js:2782 +#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:1879 +#: templates/js/translated/stock.js:2777 #: templates/js/translated/table_filters.js:179 #: templates/js/translated/table_filters.js:270 msgid "Batch" @@ -1617,8 +1626,8 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:86 #: order/templates/order/sales_order_detail.html:140 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:210 -#: part/templates/part/part_sidebar.html:55 stock/templates/stock/item.html:117 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:233 +#: part/templates/part/part_sidebar.html:60 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" msgstr "" @@ -1635,7 +1644,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:316 +#: build/templates/build/index.html:18 part/templates/part/detail.html:339 msgid "New Build Order" msgstr "" @@ -1928,9 +1937,9 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1014 part/admin.py:41 part/models.py:3168 +#: common/models.py:1014 part/admin.py:41 part/models.py:3246 #: report/models.py:158 templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:504 +#: templates/js/translated/table_filters.js:508 msgid "Template" msgstr "" @@ -1938,7 +1947,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:1021 part/admin.py:37 part/admin.py:229 part/models.py:957 +#: common/models.py:1021 part/admin.py:37 part/admin.py:262 part/models.py:958 #: templates/js/translated/bom.js:1595 #: templates/js/translated/table_filters.js:196 #: templates/js/translated/table_filters.js:467 @@ -1949,7 +1958,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1028 part/admin.py:38 part/models.py:963 +#: common/models.py:1028 part/admin.py:38 part/models.py:964 #: templates/js/translated/table_filters.js:475 msgid "Component" msgstr "" @@ -1958,7 +1967,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1035 part/admin.py:39 part/models.py:974 +#: common/models.py:1035 part/admin.py:39 part/models.py:975 msgid "Purchaseable" msgstr "" @@ -1966,7 +1975,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1042 part/admin.py:40 part/models.py:979 +#: common/models.py:1042 part/admin.py:40 part/models.py:980 #: templates/js/translated/table_filters.js:496 msgid "Salable" msgstr "" @@ -1975,10 +1984,10 @@ msgstr "" msgid "Parts are salable by default" msgstr "" -#: common/models.py:1049 part/admin.py:42 part/models.py:969 +#: common/models.py:1049 part/admin.py:42 part/models.py:970 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:120 -#: templates/js/translated/table_filters.js:508 +#: templates/js/translated/table_filters.js:512 msgid "Trackable" msgstr "" @@ -1986,10 +1995,10 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1056 part/admin.py:43 part/models.py:989 +#: common/models.py:1056 part/admin.py:43 part/models.py:990 #: part/templates/part/part_base.html:156 #: templates/js/translated/table_filters.js:42 -#: templates/js/translated/table_filters.js:512 +#: templates/js/translated/table_filters.js:516 msgid "Virtual" msgstr "" @@ -2417,7 +2426,7 @@ msgstr "" msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1461 common/models.py:1803 +#: common/models.py:1461 common/models.py:1810 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -2749,41 +2758,50 @@ msgstr "" msgid "Display part scheduling information" msgstr "" -#: common/models.py:1778 -msgid "Table String Length" +#: common/models.py:1778 part/templates/part/detail.html:61 +#: templates/js/translated/part.js:822 +msgid "Part Stocktake" msgstr "" #: common/models.py:1779 +msgid "Display part stocktake information" +msgstr "" + +#: common/models.py:1785 +msgid "Table String Length" +msgstr "" + +#: common/models.py:1786 msgid "Maximimum length limit for strings displayed in table views" msgstr "" -#: common/models.py:1843 +#: common/models.py:1850 msgid "Price break quantity" msgstr "" -#: common/models.py:1850 company/serializers.py:393 order/models.py:975 -#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1145 +#: common/models.py:1857 company/serializers.py:393 order/models.py:975 +#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1416 #: templates/js/translated/pricing.js:354 msgid "Price" msgstr "" -#: common/models.py:1851 +#: common/models.py:1858 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2011 common/models.py:2189 +#: common/models.py:2018 common/models.py:2196 msgid "Endpoint" msgstr "" -#: common/models.py:2012 +#: common/models.py:2019 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2021 +#: common/models.py:2028 msgid "Name for this webhook" msgstr "" -#: common/models.py:2026 part/admin.py:36 part/models.py:984 +#: common/models.py:2033 part/admin.py:36 part/models.py:985 #: plugin/models.py:100 templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:116 #: templates/js/translated/table_filters.js:336 @@ -2791,131 +2809,133 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:2027 +#: common/models.py:2034 msgid "Is this webhook active" msgstr "" -#: common/models.py:2041 +#: common/models.py:2048 msgid "Token" msgstr "" -#: common/models.py:2042 +#: common/models.py:2049 msgid "Token for access" msgstr "" -#: common/models.py:2049 +#: common/models.py:2056 msgid "Secret" msgstr "" -#: common/models.py:2050 +#: common/models.py:2057 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2156 +#: common/models.py:2163 msgid "Message ID" msgstr "" -#: common/models.py:2157 +#: common/models.py:2164 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2165 +#: common/models.py:2172 msgid "Host" msgstr "" -#: common/models.py:2166 +#: common/models.py:2173 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2173 +#: common/models.py:2180 msgid "Header" msgstr "" -#: common/models.py:2174 +#: common/models.py:2181 msgid "Header of this message" msgstr "" -#: common/models.py:2180 +#: common/models.py:2187 msgid "Body" msgstr "" -#: common/models.py:2181 +#: common/models.py:2188 msgid "Body of this message" msgstr "" -#: common/models.py:2190 +#: common/models.py:2197 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2195 +#: common/models.py:2202 msgid "Worked on" msgstr "" -#: common/models.py:2196 +#: common/models.py:2203 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2355 +#: common/models.py:2362 msgid "Id" msgstr "" -#: common/models.py:2361 templates/js/translated/news.js:35 +#: common/models.py:2368 templates/js/translated/news.js:35 msgid "Title" msgstr "" -#: common/models.py:2371 templates/js/translated/news.js:51 +#: common/models.py:2378 templates/js/translated/news.js:51 msgid "Published" msgstr "" -#: common/models.py:2376 templates/InvenTree/settings/plugin.html:62 +#: common/models.py:2383 templates/InvenTree/settings/plugin.html:62 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/news.js:47 msgid "Author" msgstr "" -#: common/models.py:2381 templates/js/translated/news.js:43 +#: common/models.py:2388 templates/js/translated/news.js:43 msgid "Summary" msgstr "" -#: common/models.py:2386 +#: common/models.py:2393 msgid "Read" msgstr "" -#: common/models.py:2387 +#: common/models.py:2394 msgid "Was this news item read?" msgstr "" -#: common/notifications.py:293 +#: common/notifications.py:294 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:295 +#: common/notifications.py:296 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:301 +#: common/notifications.py:302 msgid "Items Received" msgstr "" -#: common/notifications.py:303 +#: common/notifications.py:304 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:415 +#: common/notifications.py:416 msgid "Error raised by plugin" msgstr "" #: common/views.py:85 order/templates/order/order_wizard/po_upload.html:51 #: order/templates/order/purchase_order_detail.html:25 order/views.py:102 -#: part/views.py:107 templates/patterns/wizard/upload.html:37 +#: part/templates/part/import_wizard/part_upload.html:58 part/views.py:109 +#: templates/patterns/wizard/upload.html:37 msgid "Upload File" msgstr "" #: common/views.py:86 order/templates/order/order_wizard/match_fields.html:52 #: order/views.py:103 #: part/templates/part/import_wizard/ajax_match_fields.html:45 -#: part/views.py:108 templates/patterns/wizard/match_fields.html:51 +#: part/templates/part/import_wizard/match_fields.html:52 part/views.py:110 +#: templates/patterns/wizard/match_fields.html:51 msgid "Match Fields" msgstr "" @@ -2934,7 +2954,9 @@ msgstr "" #: common/views.py:509 order/templates/order/order_wizard/match_fields.html:27 #: order/templates/order/order_wizard/match_parts.html:19 #: order/templates/order/order_wizard/po_upload.html:49 +#: part/templates/part/import_wizard/match_fields.html:27 #: part/templates/part/import_wizard/match_references.html:19 +#: part/templates/part/import_wizard/part_upload.html:56 #: templates/patterns/wizard/match_fields.html:26 #: templates/patterns/wizard/upload.html:35 msgid "Previous Step" @@ -2995,7 +3017,7 @@ msgstr "" msgid "Link to external company information" msgstr "" -#: company/models.py:140 part/models.py:878 +#: company/models.py:140 part/models.py:879 msgid "Image" msgstr "" @@ -3028,8 +3050,8 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:153 company/serializers.py:399 -#: company/templates/company/company_base.html:107 part/models.py:2762 -#: part/serializers.py:154 part/serializers.py:182 stock/serializers.py:182 +#: company/templates/company/company_base.html:107 part/models.py:2780 +#: part/serializers.py:156 part/serializers.py:184 stock/serializers.py:182 #: templates/InvenTree/settings/pricing.html:64 msgid "Currency" msgstr "" @@ -3055,12 +3077,12 @@ msgstr "" #: templates/js/translated/company.js:433 #: templates/js/translated/company.js:534 #: templates/js/translated/company.js:669 -#: templates/js/translated/company.js:957 templates/js/translated/part.js:238 +#: templates/js/translated/company.js:957 templates/js/translated/part.js:241 #: templates/js/translated/table_filters.js:439 msgid "Manufacturer" msgstr "" -#: company/models.py:269 templates/js/translated/part.js:239 +#: company/models.py:269 templates/js/translated/part.js:242 msgid "Select manufacturer" msgstr "" @@ -3070,11 +3092,11 @@ msgstr "" #: templates/js/translated/company.js:533 #: templates/js/translated/company.js:685 #: templates/js/translated/company.js:976 templates/js/translated/order.js:2286 -#: templates/js/translated/part.js:249 templates/js/translated/part.js:1067 +#: templates/js/translated/part.js:252 templates/js/translated/part.js:1338 msgid "MPN" msgstr "" -#: company/models.py:276 templates/js/translated/part.js:250 +#: company/models.py:276 templates/js/translated/part.js:253 msgid "Manufacturer Part Number" msgstr "" @@ -3100,8 +3122,8 @@ msgstr "" #: company/models.py:370 #: report/templates/report/inventree_test_report_base.html:95 #: stock/models.py:2156 templates/js/translated/company.js:582 -#: templates/js/translated/company.js:800 templates/js/translated/part.js:889 -#: templates/js/translated/stock.js:1399 +#: templates/js/translated/company.js:800 templates/js/translated/part.js:1160 +#: templates/js/translated/stock.js:1398 msgid "Value" msgstr "" @@ -3109,10 +3131,10 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:377 part/admin.py:26 part/models.py:951 -#: part/models.py:3128 part/templates/part/part_base.html:286 -#: templates/InvenTree/settings/settings.html:349 -#: templates/js/translated/company.js:806 templates/js/translated/part.js:895 +#: company/models.py:377 part/admin.py:26 part/models.py:952 +#: part/models.py:3206 part/templates/part/part_base.html:286 +#: templates/InvenTree/settings/settings.html:350 +#: templates/js/translated/company.js:806 templates/js/translated/part.js:1166 msgid "Units" msgstr "" @@ -3132,24 +3154,24 @@ msgstr "" #: templates/js/translated/company.js:304 #: templates/js/translated/company.js:437 #: templates/js/translated/company.js:930 templates/js/translated/order.js:2017 -#: templates/js/translated/part.js:219 templates/js/translated/part.js:1035 +#: templates/js/translated/part.js:222 templates/js/translated/part.js:1306 #: templates/js/translated/pricing.js:231 #: templates/js/translated/table_filters.js:443 msgid "Supplier" msgstr "" -#: company/models.py:498 templates/js/translated/part.js:220 +#: company/models.py:498 templates/js/translated/part.js:223 msgid "Select supplier" msgstr "" #: company/models.py:503 company/templates/company/supplier_part.html:146 #: part/bom.py:253 part/bom.py:281 templates/js/translated/company.js:303 -#: templates/js/translated/order.js:2273 templates/js/translated/part.js:230 -#: templates/js/translated/part.js:1053 templates/js/translated/pricing.js:243 +#: templates/js/translated/order.js:2273 templates/js/translated/part.js:233 +#: templates/js/translated/part.js:1324 templates/js/translated/pricing.js:243 msgid "SKU" msgstr "" -#: company/models.py:504 templates/js/translated/part.js:231 +#: company/models.py:504 templates/js/translated/part.js:234 msgid "Supplier stock keeping unit" msgstr "" @@ -3166,24 +3188,25 @@ msgid "Supplier part description" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:181 -#: part/admin.py:225 part/models.py:3381 part/templates/part/upload_bom.html:59 +#: part/admin.py:258 part/models.py:3459 part/templates/part/upload_bom.html:59 +#: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:397 msgid "Note" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "base cost" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:534 company/templates/company/supplier_part.html:167 #: stock/admin.py:101 stock/models.py:682 #: stock/templates/stock/item_base.html:243 -#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2016 +#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2011 msgid "Packaging" msgstr "" @@ -3196,7 +3219,7 @@ msgstr "" #: templates/js/translated/company.js:997 templates/js/translated/order.js:826 #: templates/js/translated/order.js:1253 templates/js/translated/order.js:1508 #: templates/js/translated/order.js:2317 templates/js/translated/order.js:2334 -#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1137 +#: templates/js/translated/part.js:1356 templates/js/translated/part.js:1408 msgid "Pack Quantity" msgstr "" @@ -3204,7 +3227,7 @@ msgstr "" msgid "Unit quantity supplied in a single pack" msgstr "" -#: company/models.py:544 part/models.py:1863 +#: company/models.py:544 part/models.py:1869 msgid "multiple" msgstr "" @@ -3216,8 +3239,8 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:1118 templates/js/translated/build.js:1883 -#: templates/js/translated/build.js:2770 templates/js/translated/part.js:623 -#: templates/js/translated/part.js:626 +#: templates/js/translated/build.js:2770 templates/js/translated/part.js:626 +#: templates/js/translated/part.js:629 #: templates/js/translated/table_filters.js:206 msgid "Available" msgstr "" @@ -3300,7 +3323,7 @@ msgstr "" #: stock/templates/stock/item_base.html:399 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:429 templates/js/translated/order.js:2827 -#: templates/js/translated/stock.js:2607 +#: templates/js/translated/stock.js:2602 #: templates/js/translated/table_filters.js:447 msgid "Customer" msgstr "" @@ -3314,7 +3337,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:206 -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:525 msgid "Remove Image" msgstr "" @@ -3323,19 +3346,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:209 -#: part/templates/part/part_base.html:514 +#: part/templates/part/part_base.html:528 #: templates/InvenTree/settings/user.html:87 #: templates/InvenTree/settings/user.html:149 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:238 -#: part/templates/part/part_base.html:543 +#: part/templates/part/part_base.html:557 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:253 -#: part/templates/part/part_base.html:598 +#: part/templates/part/part_base.html:612 msgid "Download Image" msgstr "" @@ -3351,7 +3374,7 @@ msgstr "" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:357 +#: part/templates/part/detail.html:380 msgid "New Supplier Part" msgstr "" @@ -3380,7 +3403,7 @@ msgstr "" msgid "Create new manufacturer part" msgstr "" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:387 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:410 msgid "New Manufacturer Part" msgstr "" @@ -3394,9 +3417,9 @@ msgstr "" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:35 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:35 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:200 -#: templates/InvenTree/settings/sidebar.html:49 +#: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:293 templates/navbar.html:50 #: users/models.py:42 msgid "Purchase Orders" @@ -3417,9 +3440,9 @@ msgstr "" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:39 +#: part/templates/part/detail.html:130 part/templates/part/part_sidebar.html:39 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:220 -#: templates/InvenTree/settings/sidebar.html:51 +#: templates/InvenTree/settings/sidebar.html:53 #: templates/js/translated/search.js:317 templates/navbar.html:61 #: users/models.py:43 msgid "Sales Orders" @@ -3451,7 +3474,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:221 -#: part/templates/part/detail.html:87 part/templates/part/part_base.html:85 +#: part/templates/part/detail.html:110 part/templates/part/part_base.html:85 msgid "Order part" msgstr "" @@ -3482,28 +3505,28 @@ msgid "Suppliers" msgstr "" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:368 +#: part/templates/part/detail.html:391 msgid "Delete supplier parts" msgstr "" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:369 part/templates/part/detail.html:399 -#: templates/js/translated/forms.js:455 templates/js/translated/helpers.js:38 -#: templates/js/translated/part.js:351 templates/js/translated/stock.js:188 -#: users/models.py:224 +#: part/templates/part/detail.html:392 part/templates/part/detail.html:422 +#: templates/js/translated/forms.js:458 templates/js/translated/helpers.js:38 +#: templates/js/translated/part.js:354 templates/js/translated/stock.js:187 +#: users/models.py:225 msgid "Delete" msgstr "" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:184 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:207 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:189 +#: part/templates/part/detail.html:212 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:62 msgid "New Parameter" @@ -3514,7 +3537,7 @@ msgid "Delete parameters" msgstr "" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:825 +#: part/templates/part/detail.html:865 msgid "Add Parameter" msgstr "" @@ -3538,7 +3561,7 @@ msgstr "" #: company/templates/company/supplier_part.html:24 stock/models.py:665 #: stock/templates/stock/item_base.html:236 #: templates/js/translated/company.js:946 templates/js/translated/order.js:1173 -#: templates/js/translated/stock.js:1974 +#: templates/js/translated/stock.js:1969 msgid "Supplier Part" msgstr "" @@ -3578,7 +3601,7 @@ msgstr "" #: company/templates/company/supplier_part.html:56 #: company/templates/company/supplier_part.html:57 #: company/templates/company/supplier_part.html:222 -#: part/templates/part/detail.html:88 +#: part/templates/part/detail.html:111 msgid "Order Part" msgstr "" @@ -3630,7 +3653,7 @@ msgstr "" #: company/templates/company/supplier_part.html:204 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:198 -#: templates/js/translated/stock.js:467 +#: templates/js/translated/stock.js:466 msgid "New Stock Item" msgstr "" @@ -3662,10 +3685,10 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 -#: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/part.js:777 templates/js/translated/part.js:1378 -#: templates/js/translated/part.js:1534 templates/js/translated/stock.js:994 -#: templates/js/translated/stock.js:1799 templates/navbar.html:31 +#: templates/InvenTree/settings/sidebar.html:47 +#: templates/js/translated/part.js:1048 templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1805 templates/js/translated/stock.js:993 +#: templates/js/translated/stock.js:1794 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3680,7 +3703,7 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:29 #: part/templates/part/part_sidebar.html:30 -#: templates/InvenTree/settings/sidebar.html:35 +#: templates/InvenTree/settings/sidebar.html:37 msgid "Pricing" msgstr "" @@ -3692,7 +3715,7 @@ msgstr "" #: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:155 templates/js/translated/search.js:225 -#: templates/js/translated/stock.js:2484 users/models.py:40 +#: templates/js/translated/stock.js:2479 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3801,9 +3824,9 @@ msgstr "" #: stock/templates/stock/item_base.html:182 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:619 templates/js/translated/order.js:1174 -#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1012 -#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1954 -#: templates/js/translated/stock.js:2588 +#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1283 +#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1949 +#: templates/js/translated/stock.js:2583 msgid "Purchase Order" msgstr "" @@ -3973,7 +3996,7 @@ msgstr "" #: order/models.py:1046 order/templates/order/order_base.html:178 #: templates/js/translated/order.js:1679 templates/js/translated/order.js:2404 -#: templates/js/translated/part.js:1129 templates/js/translated/part.js:1161 +#: templates/js/translated/part.js:1400 templates/js/translated/part.js:1432 #: templates/js/translated/table_filters.js:358 msgid "Received" msgstr "" @@ -3984,7 +4007,7 @@ msgstr "" #: order/models.py:1054 stock/models.py:800 stock/serializers.py:173 #: stock/templates/stock/item_base.html:189 -#: templates/js/translated/stock.js:2005 +#: templates/js/translated/stock.js:2000 msgid "Purchase Price" msgstr "" @@ -4350,18 +4373,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:9 #: part/templates/part/import_wizard/ajax_match_fields.html:9 +#: part/templates/part/import_wizard/match_fields.html:9 #: templates/patterns/wizard/match_fields.html:8 msgid "Missing selections for the following required columns" msgstr "" #: order/templates/order/order_wizard/match_fields.html:20 #: part/templates/part/import_wizard/ajax_match_fields.html:20 +#: part/templates/part/import_wizard/match_fields.html:20 #: templates/patterns/wizard/match_fields.html:19 msgid "Duplicate selections found, see below. Fix them then retry submitting." msgstr "" #: order/templates/order/order_wizard/match_fields.html:29 #: order/templates/order/order_wizard/match_parts.html:21 +#: part/templates/part/import_wizard/match_fields.html:29 #: part/templates/part/import_wizard/match_references.html:21 #: templates/patterns/wizard/match_fields.html:28 msgid "Submit Selections" @@ -4369,18 +4395,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:35 #: part/templates/part/import_wizard/ajax_match_fields.html:28 +#: part/templates/part/import_wizard/match_fields.html:35 #: templates/patterns/wizard/match_fields.html:34 msgid "File Fields" msgstr "" #: order/templates/order/order_wizard/match_fields.html:42 #: part/templates/part/import_wizard/ajax_match_fields.html:35 +#: part/templates/part/import_wizard/match_fields.html:42 #: templates/patterns/wizard/match_fields.html:41 msgid "Remove column" msgstr "" #: order/templates/order/order_wizard/match_fields.html:60 #: part/templates/part/import_wizard/ajax_match_fields.html:53 +#: part/templates/part/import_wizard/match_fields.html:60 #: templates/patterns/wizard/match_fields.html:59 msgid "Duplicate selection" msgstr "" @@ -4389,12 +4418,13 @@ msgstr "" #: order/templates/order/order_wizard/match_parts.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: 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:102 templates/js/translated/build.js:485 #: templates/js/translated/build.js:641 templates/js/translated/build.js:2088 #: templates/js/translated/order.js:1122 templates/js/translated/order.js:1624 -#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:657 -#: templates/js/translated/stock.js:825 +#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:824 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4429,6 +4459,7 @@ msgstr "" #: order/templates/order/order_wizard/po_upload.html:27 #: part/templates/part/import_wizard/ajax_part_upload.html:10 +#: part/templates/part/import_wizard/part_upload.html:26 #: templates/patterns/wizard/upload.html:13 #, python-format msgid "Step %(step)s of %(count)s" @@ -4567,12 +4598,12 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:19 part/admin.py:219 part/models.py:3262 stock/admin.py:84 +#: part/admin.py:19 part/admin.py:252 part/models.py:3340 stock/admin.py:84 #: templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/admin.py:20 part/admin.py:221 part/models.py:3266 stock/admin.py:85 +#: part/admin.py:20 part/admin.py:254 part/models.py:3344 stock/admin.py:85 msgid "Part Name" msgstr "" @@ -4580,32 +4611,32 @@ msgstr "" msgid "Part Description" msgstr "" -#: part/admin.py:22 part/models.py:852 part/templates/part/part_base.html:272 -#: templates/js/translated/part.js:763 templates/js/translated/part.js:1491 -#: templates/js/translated/stock.js:1765 +#: part/admin.py:22 part/models.py:853 part/templates/part/part_base.html:272 +#: templates/js/translated/part.js:1034 templates/js/translated/part.js:1762 +#: templates/js/translated/stock.js:1760 msgid "IPN" msgstr "" -#: part/admin.py:23 part/models.py:860 part/templates/part/part_base.html:279 -#: report/models.py:171 templates/js/translated/part.js:768 +#: part/admin.py:23 part/models.py:861 part/templates/part/part_base.html:279 +#: report/models.py:171 templates/js/translated/part.js:1039 msgid "Revision" msgstr "" -#: part/admin.py:24 part/admin.py:145 part/models.py:838 +#: part/admin.py:24 part/admin.py:178 part/models.py:839 #: part/templates/part/category.html:87 part/templates/part/part_base.html:300 msgid "Keywords" msgstr "" -#: part/admin.py:28 part/admin.py:139 +#: part/admin.py:28 part/admin.py:172 #: templates/js/translated/model_renderers.js:338 msgid "Category ID" msgstr "" -#: part/admin.py:29 part/admin.py:140 +#: part/admin.py:29 part/admin.py:173 msgid "Category Name" msgstr "" -#: part/admin.py:30 part/admin.py:144 +#: part/admin.py:30 part/admin.py:177 msgid "Default Location ID" msgstr "" @@ -4613,7 +4644,7 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:33 part/models.py:944 part/templates/part/part_base.html:206 +#: part/admin.py:33 part/models.py:945 part/templates/part/part_base.html:206 msgid "Minimum Stock" msgstr "" @@ -4625,8 +4656,8 @@ msgstr "" #: part/admin.py:48 part/bom.py:145 part/templates/part/part_base.html:213 #: templates/js/translated/bom.js:1156 templates/js/translated/build.js:1935 -#: templates/js/translated/part.js:613 templates/js/translated/part.js:633 -#: templates/js/translated/part.js:1381 templates/js/translated/part.js:1559 +#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 +#: templates/js/translated/part.js:1652 templates/js/translated/part.js:1830 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4642,115 +4673,115 @@ msgid "Allocated" msgstr "" #: part/admin.py:51 part/templates/part/part_base.html:244 -#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 -#: templates/js/translated/part.js:1385 templates/js/translated/part.js:1566 +#: templates/js/translated/part.js:619 templates/js/translated/part.js:639 +#: templates/js/translated/part.js:1656 templates/js/translated/part.js:1837 msgid "Building" msgstr "" -#: part/admin.py:52 part/models.py:2846 +#: part/admin.py:52 part/models.py:2864 msgid "Minimum Cost" msgstr "" -#: part/admin.py:53 part/models.py:2852 +#: part/admin.py:53 part/models.py:2870 msgid "Maximum Cost" msgstr "" -#: part/admin.py:142 part/admin.py:216 stock/admin.py:26 stock/admin.py:98 +#: part/admin.py:175 part/admin.py:249 stock/admin.py:26 stock/admin.py:98 msgid "Parent ID" msgstr "" -#: part/admin.py:143 part/admin.py:218 stock/admin.py:27 +#: part/admin.py:176 part/admin.py:251 stock/admin.py:27 msgid "Parent Name" msgstr "" -#: part/admin.py:146 part/templates/part/category.html:81 +#: part/admin.py:179 part/templates/part/category.html:81 #: part/templates/part/category.html:94 msgid "Category Path" msgstr "" -#: part/admin.py:149 part/models.py:382 part/templates/part/cat_link.html:3 +#: part/admin.py:182 part/models.py:383 part/templates/part/cat_link.html:3 #: part/templates/part/category.html:23 part/templates/part/category.html:134 #: part/templates/part/category.html:154 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:84 -#: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:2065 templates/js/translated/search.js:146 +#: templates/InvenTree/settings/sidebar.html:43 +#: templates/js/translated/part.js:2346 templates/js/translated/search.js:146 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" -#: part/admin.py:211 +#: part/admin.py:244 msgid "BOM Level" msgstr "" -#: part/admin.py:213 +#: part/admin.py:246 msgid "BOM Item ID" msgstr "" -#: part/admin.py:217 +#: part/admin.py:250 msgid "Parent IPN" msgstr "" -#: part/admin.py:220 part/models.py:3270 +#: part/admin.py:253 part/models.py:3348 msgid "Part IPN" msgstr "" -#: part/admin.py:226 templates/js/translated/pricing.js:91 +#: part/admin.py:259 templates/js/translated/pricing.js:91 #: templates/js/translated/pricing.js:732 msgid "Minimum Price" msgstr "" -#: part/admin.py:227 templates/js/translated/pricing.js:86 +#: part/admin.py:260 templates/js/translated/pricing.js:86 #: templates/js/translated/pricing.js:740 msgid "Maximum Price" msgstr "" -#: part/api.py:536 +#: part/api.py:538 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:556 +#: part/api.py:558 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:574 +#: part/api.py:576 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:660 +#: part/api.py:662 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:818 +#: part/api.py:820 msgid "Valid" msgstr "" -#: part/api.py:819 +#: part/api.py:821 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:825 +#: part/api.py:827 msgid "This option must be selected" msgstr "" -#: part/api.py:1265 +#: part/api.py:1281 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1269 +#: part/api.py:1285 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1284 +#: part/api.py:1300 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1315 part/api.py:1319 part/api.py:1334 part/api.py:1338 +#: part/api.py:1331 part/api.py:1335 part/api.py:1350 part/api.py:1354 msgid "This field is required" msgstr "" -#: part/bom.py:142 part/models.py:116 part/models.py:887 -#: part/templates/part/category.html:109 part/templates/part/part_base.html:360 +#: part/bom.py:142 part/models.py:116 part/models.py:888 +#: part/templates/part/category.html:109 part/templates/part/part_base.html:374 msgid "Default Location" msgstr "" @@ -4801,7 +4832,7 @@ msgstr "" msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:159 part/models.py:3211 part/templates/part/category.html:16 +#: part/models.py:159 part/models.py:3289 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -4812,423 +4843,459 @@ msgstr "" msgid "Part Categories" msgstr "" -#: part/models.py:468 +#: part/models.py:469 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:538 part/models.py:550 +#: part/models.py:539 part/models.py:551 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:640 +#: part/models.py:641 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:771 +#: part/models.py:772 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:776 +#: part/models.py:777 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:790 +#: part/models.py:791 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:808 part/models.py:3267 +#: part/models.py:809 part/models.py:3345 msgid "Part name" msgstr "" -#: part/models.py:815 +#: part/models.py:816 msgid "Is Template" msgstr "" -#: part/models.py:816 +#: part/models.py:817 msgid "Is this part a template part?" msgstr "" -#: part/models.py:826 +#: part/models.py:827 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:827 +#: part/models.py:828 msgid "Variant Of" msgstr "" -#: part/models.py:833 +#: part/models.py:834 msgid "Part description" msgstr "" -#: part/models.py:839 +#: part/models.py:840 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:846 part/models.py:2966 part/models.py:3210 +#: part/models.py:847 part/models.py:3044 part/models.py:3288 #: part/templates/part/part_base.html:263 -#: templates/InvenTree/settings/settings.html:229 +#: templates/InvenTree/settings/settings.html:230 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1513 templates/js/translated/part.js:1770 +#: templates/js/translated/part.js:1784 templates/js/translated/part.js:2051 msgid "Category" msgstr "" -#: part/models.py:847 +#: part/models.py:848 msgid "Part category" msgstr "" -#: part/models.py:853 +#: part/models.py:854 msgid "Internal Part Number" msgstr "" -#: part/models.py:859 +#: part/models.py:860 msgid "Part revision or version number" msgstr "" -#: part/models.py:885 +#: part/models.py:886 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:930 part/templates/part/part_base.html:369 +#: part/models.py:931 part/templates/part/part_base.html:383 msgid "Default Supplier" msgstr "" -#: part/models.py:931 +#: part/models.py:932 msgid "Default supplier part" msgstr "" -#: part/models.py:938 +#: part/models.py:939 msgid "Default Expiry" msgstr "" -#: part/models.py:939 +#: part/models.py:940 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:945 +#: part/models.py:946 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:952 +#: part/models.py:953 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:958 +#: part/models.py:959 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:964 +#: part/models.py:965 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:970 +#: part/models.py:971 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:975 +#: part/models.py:976 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:980 +#: part/models.py:981 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:985 +#: part/models.py:986 msgid "Is this part active?" msgstr "" -#: part/models.py:990 +#: part/models.py:991 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:992 +#: part/models.py:993 msgid "Part notes" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "BOM checksum" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:997 +#: part/models.py:998 msgid "BOM checked by" msgstr "" -#: part/models.py:999 +#: part/models.py:1000 msgid "BOM checked date" msgstr "" -#: part/models.py:1003 +#: part/models.py:1004 msgid "Creation User" msgstr "" -#: part/models.py:1863 +#: part/models.py:1010 part/templates/part/part_base.html:345 +#: stock/templates/stock/item_base.html:445 +#: templates/js/translated/part.js:1901 +msgid "Last Stocktake" +msgstr "" + +#: part/models.py:1869 msgid "Sell multiple" msgstr "" -#: part/models.py:2763 +#: part/models.py:2781 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:2768 +#: part/models.py:2786 templates/js/translated/part.js:806 msgid "Updated" msgstr "" -#: part/models.py:2769 +#: part/models.py:2787 msgid "Timestamp of last pricing update" msgstr "" -#: part/models.py:2786 +#: part/models.py:2804 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:2787 +#: part/models.py:2805 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:2792 +#: part/models.py:2810 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:2793 +#: part/models.py:2811 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:2798 +#: part/models.py:2816 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:2799 +#: part/models.py:2817 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:2804 +#: part/models.py:2822 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:2805 +#: part/models.py:2823 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:2810 +#: part/models.py:2828 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:2811 +#: part/models.py:2829 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:2816 +#: part/models.py:2834 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:2817 +#: part/models.py:2835 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:2822 +#: part/models.py:2840 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:2823 +#: part/models.py:2841 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:2828 +#: part/models.py:2846 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:2829 +#: part/models.py:2847 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:2834 +#: part/models.py:2852 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:2835 +#: part/models.py:2853 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:2840 +#: part/models.py:2858 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:2841 +#: part/models.py:2859 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:2847 +#: part/models.py:2865 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:2853 +#: part/models.py:2871 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:2858 +#: part/models.py:2876 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:2859 +#: part/models.py:2877 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:2864 +#: part/models.py:2882 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:2865 +#: part/models.py:2883 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:2870 +#: part/models.py:2888 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:2871 +#: part/models.py:2889 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:2876 +#: part/models.py:2894 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:2877 +#: part/models.py:2895 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3013 +#: part/models.py:2913 +msgid "Part for stocktake" +msgstr "" + +#: part/models.py:2920 +msgid "Total available stock at time of stocktake" +msgstr "" + +#: part/models.py:2924 part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:63 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:2043 templates/js/translated/part.js:887 +#: templates/js/translated/pricing.js:537 +#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2511 +msgid "Date" +msgstr "" + +#: part/models.py:2925 +msgid "Date stocktake was performed" +msgstr "" + +#: part/models.py:2933 +msgid "Additional notes" +msgstr "" + +#: part/models.py:2941 +msgid "User who performed this stocktake" +msgstr "" + +#: part/models.py:3091 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3030 +#: part/models.py:3108 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:3050 templates/js/translated/part.js:2116 -#: templates/js/translated/stock.js:1379 +#: part/models.py:3128 templates/js/translated/part.js:2397 +#: templates/js/translated/stock.js:1378 msgid "Test Name" msgstr "" -#: part/models.py:3051 +#: part/models.py:3129 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3056 +#: part/models.py:3134 msgid "Test Description" msgstr "" -#: part/models.py:3057 +#: part/models.py:3135 msgid "Enter description for this test" msgstr "" -#: part/models.py:3062 templates/js/translated/part.js:2125 +#: part/models.py:3140 templates/js/translated/part.js:2406 #: templates/js/translated/table_filters.js:322 msgid "Required" msgstr "" -#: part/models.py:3063 +#: part/models.py:3141 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3068 templates/js/translated/part.js:2133 +#: part/models.py:3146 templates/js/translated/part.js:2414 msgid "Requires Value" msgstr "" -#: part/models.py:3069 +#: part/models.py:3147 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3074 templates/js/translated/part.js:2140 +#: part/models.py:3152 templates/js/translated/part.js:2421 msgid "Requires Attachment" msgstr "" -#: part/models.py:3075 +#: part/models.py:3153 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3116 +#: part/models.py:3194 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3124 +#: part/models.py:3202 msgid "Parameter Name" msgstr "" -#: part/models.py:3128 +#: part/models.py:3206 msgid "Parameter Units" msgstr "" -#: part/models.py:3133 +#: part/models.py:3211 msgid "Parameter description" msgstr "" -#: part/models.py:3166 +#: part/models.py:3244 msgid "Parent Part" msgstr "" -#: part/models.py:3168 part/models.py:3216 part/models.py:3217 -#: templates/InvenTree/settings/settings.html:224 +#: part/models.py:3246 part/models.py:3294 part/models.py:3295 +#: templates/InvenTree/settings/settings.html:225 msgid "Parameter Template" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Data" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Parameter Value" msgstr "" -#: part/models.py:3221 templates/InvenTree/settings/settings.html:233 +#: part/models.py:3299 templates/InvenTree/settings/settings.html:234 msgid "Default Value" msgstr "" -#: part/models.py:3222 +#: part/models.py:3300 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3259 +#: part/models.py:3337 msgid "Part ID or part name" msgstr "" -#: part/models.py:3263 +#: part/models.py:3341 msgid "Unique part ID value" msgstr "" -#: part/models.py:3271 +#: part/models.py:3349 msgid "Part IPN value" msgstr "" -#: part/models.py:3274 +#: part/models.py:3352 msgid "Level" msgstr "" -#: part/models.py:3275 +#: part/models.py:3353 msgid "BOM level" msgstr "" -#: part/models.py:3344 +#: part/models.py:3422 msgid "Select parent part" msgstr "" -#: part/models.py:3352 +#: part/models.py:3430 msgid "Sub part" msgstr "" -#: part/models.py:3353 +#: part/models.py:3431 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:3359 +#: part/models.py:3437 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:3363 part/templates/part/upload_bom.html:58 +#: part/models.py:3441 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:933 templates/js/translated/bom.js:986 #: templates/js/translated/build.js:1868 #: templates/js/translated/table_filters.js:84 @@ -5236,189 +5303,189 @@ msgstr "" msgid "Optional" msgstr "" -#: part/models.py:3364 +#: part/models.py:3442 msgid "This BOM item is optional" msgstr "" -#: part/models.py:3369 templates/js/translated/bom.js:929 +#: part/models.py:3447 templates/js/translated/bom.js:929 #: templates/js/translated/bom.js:995 templates/js/translated/build.js:1859 #: templates/js/translated/table_filters.js:88 msgid "Consumable" msgstr "" -#: part/models.py:3370 +#: part/models.py:3448 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:3374 part/templates/part/upload_bom.html:55 +#: part/models.py:3452 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:3375 +#: part/models.py:3453 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:3378 +#: part/models.py:3456 msgid "BOM item reference" msgstr "" -#: part/models.py:3381 +#: part/models.py:3459 msgid "BOM item notes" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "Checksum" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "BOM line checksum" msgstr "" -#: part/models.py:3387 part/templates/part/upload_bom.html:57 +#: part/models.py:3465 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1012 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:108 msgid "Inherited" msgstr "" -#: part/models.py:3388 +#: part/models.py:3466 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:3393 part/templates/part/upload_bom.html:56 +#: part/models.py:3471 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1004 msgid "Allow Variants" msgstr "" -#: part/models.py:3394 +#: part/models.py:3472 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:3480 stock/models.py:558 +#: part/models.py:3558 stock/models.py:558 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:3489 part/models.py:3491 +#: part/models.py:3567 part/models.py:3569 msgid "Sub part must be specified" msgstr "" -#: part/models.py:3618 +#: part/models.py:3696 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:3639 +#: part/models.py:3717 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:3652 +#: part/models.py:3730 msgid "Parent BOM item" msgstr "" -#: part/models.py:3660 +#: part/models.py:3738 msgid "Substitute part" msgstr "" -#: part/models.py:3675 +#: part/models.py:3753 msgid "Part 1" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Part 2" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Select Related Part" msgstr "" -#: part/models.py:3697 +#: part/models.py:3775 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:3701 +#: part/models.py:3779 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:155 part/serializers.py:183 stock/serializers.py:183 +#: part/serializers.py:157 part/serializers.py:185 stock/serializers.py:183 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:543 +#: part/serializers.py:584 msgid "Update" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:585 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:854 +#: part/serializers.py:895 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:862 +#: part/serializers.py:903 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:863 +#: part/serializers.py:904 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:868 +#: part/serializers.py:909 msgid "Include Inherited" msgstr "" -#: part/serializers.py:869 +#: part/serializers.py:910 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:874 +#: part/serializers.py:915 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:875 +#: part/serializers.py:916 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:921 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:881 +#: part/serializers.py:922 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:962 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:922 +#: part/serializers.py:963 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:952 +#: part/serializers.py:993 msgid "No part column specified" msgstr "" -#: part/serializers.py:995 +#: part/serializers.py:1036 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:998 +#: part/serializers.py:1039 msgid "No matching part found" msgstr "" -#: part/serializers.py:1001 +#: part/serializers.py:1042 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1010 +#: part/serializers.py:1051 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1059 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1039 +#: part/serializers.py:1080 msgid "At least one BOM item is required" msgstr "" @@ -5450,7 +5517,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:267 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:290 msgid "BOM actions" msgstr "" @@ -5507,8 +5574,8 @@ msgstr "" msgid "New Part" msgstr "" -#: part/templates/part/category.html:169 part/templates/part/detail.html:366 -#: part/templates/part/detail.html:397 +#: part/templates/part/category.html:169 part/templates/part/detail.html:389 +#: part/templates/part/detail.html:420 msgid "Options" msgstr "" @@ -5556,7 +5623,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:404 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:407 msgid "Duplicate Part" msgstr "" @@ -5593,118 +5660,128 @@ msgstr "" msgid "Refresh" msgstr "" -#: part/templates/part/detail.html:59 +#: part/templates/part/detail.html:65 +msgid "Add stocktake information" +msgstr "" + +#: part/templates/part/detail.html:66 part/templates/part/part_sidebar.html:49 +#: stock/admin.py:107 templates/js/translated/stock.js:1905 +msgid "Stocktake" +msgstr "" + +#: part/templates/part/detail.html:82 msgid "Part Test Templates" msgstr "" -#: part/templates/part/detail.html:64 +#: part/templates/part/detail.html:87 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:144 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:141 +#: part/templates/part/detail.html:164 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:156 +#: part/templates/part/detail.html:179 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:160 +#: part/templates/part/detail.html:183 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:161 +#: part/templates/part/detail.html:184 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:188 +#: part/templates/part/detail.html:211 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:225 part/templates/part/part_sidebar.html:52 +#: part/templates/part/detail.html:248 part/templates/part/part_sidebar.html:57 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:229 part/templates/part/detail.html:230 +#: part/templates/part/detail.html:252 part/templates/part/detail.html:253 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:250 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:273 part/templates/part/part_sidebar.html:17 +#: report/templates/report/inventree_bill_of_materials_report.html:100 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:255 +#: part/templates/part/detail.html:278 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:259 templates/js/translated/bom.js:309 +#: part/templates/part/detail.html:282 templates/js/translated/bom.js:309 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:261 +#: part/templates/part/detail.html:284 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:271 +#: part/templates/part/detail.html:294 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:272 templates/js/translated/part.js:276 +#: part/templates/part/detail.html:295 templates/js/translated/part.js:279 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:273 +#: part/templates/part/detail.html:296 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:278 part/templates/part/detail.html:279 +#: part/templates/part/detail.html:301 part/templates/part/detail.html:302 #: templates/js/translated/bom.js:1268 templates/js/translated/bom.js:1269 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:292 +#: part/templates/part/detail.html:315 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:310 +#: part/templates/part/detail.html:333 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:337 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:360 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:353 +#: part/templates/part/detail.html:376 msgid "Part Suppliers" msgstr "" -#: part/templates/part/detail.html:383 +#: part/templates/part/detail.html:406 msgid "Part Manufacturers" msgstr "" -#: part/templates/part/detail.html:399 +#: part/templates/part/detail.html:422 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:696 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:704 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:796 msgid "Add Test Result Template" msgstr "" #: part/templates/part/import_wizard/ajax_part_upload.html:29 #: part/templates/part/import_wizard/part_upload.html:14 -msgid "Unsuffitient privileges." +msgid "Insufficient privileges." msgstr "" #: part/templates/part/import_wizard/part_upload.html:8 @@ -5715,6 +5792,34 @@ msgstr "" msgid "Import Parts from File" msgstr "" +#: part/templates/part/import_wizard/part_upload.html:31 +msgid "Requirements for part import" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "The part import file must contain the required named columns as provided in the " +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:89 +msgid "Download Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:92 +#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 +#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 +msgid "Format" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:93 +#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 +#: templates/js/translated/order.js:999 +msgid "Select file format" +msgstr "" + #: part/templates/part/part_app_base.html:12 msgid "Part List" msgstr "" @@ -5804,12 +5909,12 @@ msgstr "" #: templates/js/translated/company.js:660 #: templates/js/translated/company.js:921 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:677 templates/js/translated/part.js:755 +#: templates/js/translated/part.js:680 templates/js/translated/part.js:1026 msgid "Inactive" msgstr "" #: part/templates/part/part_base.html:165 -#: part/templates/part/part_base.html:666 +#: part/templates/part/part_base.html:680 msgid "Show Part Details" msgstr "" @@ -5837,38 +5942,38 @@ msgid "Minimum stock level" msgstr "" #: part/templates/part/part_base.html:330 templates/js/translated/bom.js:1032 -#: templates/js/translated/part.js:798 templates/js/translated/part.js:1604 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:1875 #: templates/js/translated/pricing.js:124 #: templates/js/translated/pricing.js:762 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:345 +#: part/templates/part/part_base.html:359 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:349 +#: part/templates/part/part_base.html:363 #: stock/templates/stock/item_base.html:331 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:449 +#: part/templates/part/part_base.html:463 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:495 +#: part/templates/part/part_base.html:509 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:512 +#: part/templates/part/part_base.html:526 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:564 +#: part/templates/part/part_base.html:578 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:660 +#: part/templates/part/part_base.html:674 msgid "Hide Part Details" msgstr "" @@ -5920,15 +6025,6 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" -#: part/templates/part/part_scheduling.html:13 -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:63 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:2043 templates/js/translated/pricing.js:537 -#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2516 -msgid "Date" -msgstr "" - #: part/templates/part/part_scheduling.html:14 msgid "Scheduled Quantity" msgstr "" @@ -5941,7 +6037,7 @@ msgstr "" msgid "Scheduling" msgstr "" -#: part/templates/part/part_sidebar.html:48 +#: part/templates/part/part_sidebar.html:53 msgid "Test Templates" msgstr "" @@ -5960,7 +6056,7 @@ msgstr "" #: part/templates/part/prices.html:25 stock/admin.py:106 #: stock/templates/stock/item_base.html:440 #: templates/js/translated/company.js:1039 -#: templates/js/translated/stock.js:1940 +#: templates/js/translated/stock.js:1935 msgid "Last Updated" msgstr "" @@ -6023,8 +6119,8 @@ msgstr "" msgid "Add Sell Price Break" msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:639 -#: templates/js/translated/part.js:1373 templates/js/translated/part.js:1375 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:1644 templates/js/translated/part.js:1646 msgid "No Stock" msgstr "" @@ -6087,27 +6183,32 @@ msgstr "" msgid "{title} v{version}" msgstr "" -#: part/views.py:109 +#: part/views.py:111 msgid "Match References" msgstr "" -#: part/views.py:354 +#: part/views.py:239 +#, python-brace-format +msgid "Can't import part {name} because there is no category assigned" +msgstr "" + +#: part/views.py:378 msgid "Part QR Code" msgstr "" -#: part/views.py:372 +#: part/views.py:396 msgid "Select Part Image" msgstr "" -#: part/views.py:398 +#: part/views.py:422 msgid "Updated part image" msgstr "" -#: part/views.py:401 +#: part/views.py:425 msgid "Part image not found" msgstr "" -#: part/views.py:493 +#: part/views.py:517 msgid "Part Pricing" msgstr "" @@ -6156,28 +6257,48 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:29 -#: plugin/builtin/integration/core_notifications.py:31 +#: plugin/builtin/integration/core_notifications.py:33 msgid "InvenTree contributors" msgstr "" -#: plugin/builtin/integration/core_notifications.py:30 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:32 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notificaton methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:37 -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:80 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:38 -#: plugin/builtin/integration/core_notifications.py:57 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:81 msgid "Allow sending of emails for event notifications" msgstr "" +#: plugin/builtin/integration/core_notifications.py:45 +msgid "Enable slack notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:46 +msgid "Allow sending of slack channel messages for event notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:51 +msgid "Slack incoming webhook url" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:52 +msgid "URL that is used to send messages to a slack channel" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:162 +msgid "Open link" +msgstr "" + #: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" @@ -6409,6 +6530,10 @@ msgstr "" msgid "Asset file description" msgstr "" +#: report/templates/report/inventree_bill_of_materials_report.html:133 +msgid "Materials needed" +msgstr "" + #: report/templates/report/inventree_build_order_base.html:146 msgid "Required For" msgstr "" @@ -6427,7 +6552,7 @@ msgstr "" #: templates/js/translated/build.js:1244 templates/js/translated/build.js:1745 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:121 templates/js/translated/order.js:3611 -#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:522 +#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:521 msgid "Serial Number" msgstr "" @@ -6459,8 +6584,9 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: stock/admin.py:87 templates/js/translated/stock.js:642 -#: templates/js/translated/stock.js:812 templates/js/translated/stock.js:2765 +#: stock/admin.py:87 templates/js/translated/part.js:749 +#: templates/js/translated/stock.js:641 templates/js/translated/stock.js:811 +#: templates/js/translated/stock.js:2760 msgid "Serial" msgstr "" @@ -6515,13 +6641,9 @@ msgstr "" msgid "Purchase Order ID" msgstr "" -#: stock/admin.py:107 templates/js/translated/stock.js:1910 -msgid "Stocktake" -msgstr "" - #: stock/admin.py:108 stock/models.py:764 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/stock.js:1924 +#: templates/js/translated/stock.js:1919 msgid "Expiry Date" msgstr "" @@ -6936,7 +7058,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2912 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2907 msgid "Install Stock Item" msgstr "" @@ -6944,7 +7066,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1561 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1560 msgid "Add Test Result" msgstr "" @@ -7117,10 +7239,6 @@ msgstr "" msgid "Stale" msgstr "" -#: stock/templates/stock/item_base.html:445 -msgid "Last Stocktake" -msgstr "" - #: stock/templates/stock/item_base.html:449 msgid "No stocktake performed" msgstr "" @@ -7394,7 +7512,8 @@ msgstr "" #: templates/InvenTree/notifications/notifications.html:10 #: templates/InvenTree/notifications/sidebar.html:5 -#: templates/InvenTree/settings/sidebar.html:17 templates/notifications.html:5 +#: templates/InvenTree/settings/sidebar.html:17 +#: templates/InvenTree/settings/sidebar.html:35 templates/notifications.html:5 msgid "Notifications" msgstr "" @@ -7475,6 +7594,14 @@ msgstr "" msgid "Open in new tab" msgstr "" +#: templates/InvenTree/settings/notifications.html:9 +msgid "Global Notification Settings" +msgstr "" + +#: templates/InvenTree/settings/notifications.html:18 +msgid "Slug" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -7492,7 +7619,7 @@ msgid "Part Parameter Templates" msgstr "" #: templates/InvenTree/settings/plugin.html:10 -#: templates/InvenTree/settings/sidebar.html:55 +#: templates/InvenTree/settings/sidebar.html:57 msgid "Plugin Settings" msgstr "" @@ -7501,7 +7628,7 @@ msgid "Changing the settings below require you to immediately restart the server msgstr "" #: templates/InvenTree/settings/plugin.html:38 -#: templates/InvenTree/settings/sidebar.html:57 +#: templates/InvenTree/settings/sidebar.html:59 msgid "Plugins" msgstr "" @@ -7669,67 +7796,67 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:117 +#: templates/InvenTree/settings/settings.html:118 msgid "Edit Plugin Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:119 +#: templates/InvenTree/settings/settings.html:120 msgid "Edit Notification Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:122 +#: templates/InvenTree/settings/settings.html:123 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:124 +#: templates/InvenTree/settings/settings.html:125 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:214 +#: templates/InvenTree/settings/settings.html:215 msgid "No category parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:236 -#: templates/InvenTree/settings/settings.html:361 -msgid "Edit Template" -msgstr "" - #: templates/InvenTree/settings/settings.html:237 #: templates/InvenTree/settings/settings.html:362 +msgid "Edit Template" +msgstr "" + +#: templates/InvenTree/settings/settings.html:238 +#: templates/InvenTree/settings/settings.html:363 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:277 +#: templates/InvenTree/settings/settings.html:278 msgid "Create Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:322 +#: templates/InvenTree/settings/settings.html:323 msgid "Delete Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:334 +#: templates/InvenTree/settings/settings.html:335 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:338 +#: templates/InvenTree/settings/settings.html:339 #: templates/js/translated/news.js:29 #: templates/js/translated/notification.js:36 msgid "ID" msgstr "" -#: templates/InvenTree/settings/settings.html:380 +#: templates/InvenTree/settings/settings.html:381 msgid "Create Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:399 +#: templates/InvenTree/settings/settings.html:400 msgid "Edit Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:413 +#: templates/InvenTree/settings/settings.html:414 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/InvenTree/settings/settings.html:421 +#: templates/InvenTree/settings/settings.html:422 msgid "Delete Part Parameter Template" msgstr "" @@ -7758,12 +7885,12 @@ msgid "Search Settings" msgstr "" #: templates/InvenTree/settings/sidebar.html:19 -#: templates/InvenTree/settings/sidebar.html:37 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Label Printing" msgstr "" #: templates/InvenTree/settings/sidebar.html:21 -#: templates/InvenTree/settings/sidebar.html:39 +#: templates/InvenTree/settings/sidebar.html:41 msgid "Reporting" msgstr "" @@ -7775,7 +7902,7 @@ msgstr "" msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:43 +#: templates/InvenTree/settings/sidebar.html:45 msgid "Categories" msgstr "" @@ -7945,64 +8072,64 @@ msgstr "" msgid "Do you really want to remove the selected email address?" msgstr "" -#: templates/InvenTree/settings/user_display.html:28 +#: templates/InvenTree/settings/user_display.html:29 msgid "Theme Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:38 +#: templates/InvenTree/settings/user_display.html:39 msgid "Select theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:49 +#: templates/InvenTree/settings/user_display.html:50 msgid "Set Theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:57 +#: templates/InvenTree/settings/user_display.html:58 msgid "Language Settings" msgstr "" -#: templates/InvenTree/settings/user_display.html:66 +#: templates/InvenTree/settings/user_display.html:67 msgid "Select language" msgstr "" -#: templates/InvenTree/settings/user_display.html:82 +#: templates/InvenTree/settings/user_display.html:83 #, python-format msgid "%(lang_translated)s%% translated" msgstr "" -#: templates/InvenTree/settings/user_display.html:84 +#: templates/InvenTree/settings/user_display.html:85 msgid "No translations available" msgstr "" -#: templates/InvenTree/settings/user_display.html:91 +#: templates/InvenTree/settings/user_display.html:92 msgid "Set Language" msgstr "" -#: templates/InvenTree/settings/user_display.html:94 +#: templates/InvenTree/settings/user_display.html:95 msgid "Some languages are not complete" msgstr "" -#: templates/InvenTree/settings/user_display.html:96 +#: templates/InvenTree/settings/user_display.html:97 msgid "Show only sufficent" msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "and hidden." msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "Show them too" msgstr "" -#: templates/InvenTree/settings/user_display.html:105 +#: templates/InvenTree/settings/user_display.html:106 msgid "Help the translation efforts!" msgstr "" -#: templates/InvenTree/settings/user_display.html:106 +#: templates/InvenTree/settings/user_display.html:107 msgid "Native language translation of the web application is community contributed via crowdin. Contributions are welcomed and encouraged." msgstr "" -#: templates/InvenTree/settings/user_display.html:107 +#: templates/InvenTree/settings/user_display.html:108 msgid "InvenTree Translation Project" msgstr "" @@ -8080,7 +8207,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:646 +#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:649 msgid "Confirm" msgstr "" @@ -8313,7 +8440,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 -#: templates/js/translated/part.js:2445 +#: templates/js/translated/part.js:2726 msgid "Minimum Quantity" msgstr "" @@ -8466,7 +8593,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1089 +#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1088 msgid "Remove stock item" msgstr "" @@ -8548,16 +8675,6 @@ msgstr "" msgid "Download BOM Template" msgstr "" -#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 -#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 -msgid "Format" -msgstr "" - -#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 -#: templates/js/translated/order.js:999 -msgid "Select file format" -msgstr "" - #: templates/js/translated/bom.js:320 msgid "Multi Level BOM" msgstr "" @@ -8688,7 +8805,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:1145 templates/js/translated/build.js:1923 -#: templates/js/translated/part.js:790 templates/js/translated/part.js:1572 +#: templates/js/translated/part.js:1061 templates/js/translated/part.js:1843 msgid "Includes variant stock" msgstr "" @@ -8773,13 +8890,13 @@ msgstr "" msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:317 templates/js/translated/stock.js:95 -#: templates/js/translated/stock.js:237 +#: templates/js/translated/build.js:317 templates/js/translated/stock.js:94 +#: templates/js/translated/stock.js:236 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:319 templates/js/translated/stock.js:97 -#: templates/js/translated/stock.js:239 +#: templates/js/translated/build.js:319 templates/js/translated/stock.js:96 +#: templates/js/translated/stock.js:238 msgid "Latest serial number" msgstr "" @@ -8987,9 +9104,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1466 -#: templates/js/translated/part.js:2003 templates/js/translated/stock.js:1725 -#: templates/js/translated/stock.js:2428 +#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1737 +#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1724 +#: templates/js/translated/stock.js:2423 msgid "Select" msgstr "" @@ -9001,7 +9118,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2695 +#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2690 msgid "No user information" msgstr "" @@ -9074,34 +9191,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:652 -#: templates/js/translated/company.js:913 templates/js/translated/part.js:661 -#: templates/js/translated/part.js:747 +#: templates/js/translated/company.js:913 templates/js/translated/part.js:664 +#: templates/js/translated/part.js:1018 msgid "Template part" msgstr "" #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:917 templates/js/translated/part.js:665 -#: templates/js/translated/part.js:751 +#: templates/js/translated/company.js:917 templates/js/translated/part.js:668 +#: templates/js/translated/part.js:1022 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:784 templates/js/translated/part.js:870 +#: templates/js/translated/company.js:784 templates/js/translated/part.js:1141 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:821 templates/js/translated/part.js:912 +#: templates/js/translated/company.js:821 templates/js/translated/part.js:1183 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:822 templates/js/translated/part.js:913 +#: templates/js/translated/company.js:822 templates/js/translated/part.js:1184 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:841 templates/js/translated/part.js:930 +#: templates/js/translated/company.js:841 templates/js/translated/part.js:1201 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:852 templates/js/translated/part.js:942 +#: templates/js/translated/company.js:852 templates/js/translated/part.js:1213 msgid "Delete Parameter" msgstr "" @@ -9181,61 +9298,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:369 templates/js/translated/forms.js:384 -#: templates/js/translated/forms.js:398 templates/js/translated/forms.js:412 +#: templates/js/translated/forms.js:372 templates/js/translated/forms.js:387 +#: templates/js/translated/forms.js:401 templates/js/translated/forms.js:415 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:371 +#: templates/js/translated/forms.js:374 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:386 +#: templates/js/translated/forms.js:389 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:400 +#: templates/js/translated/forms.js:403 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:414 +#: templates/js/translated/forms.js:417 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:672 +#: templates/js/translated/forms.js:675 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:773 +#: templates/js/translated/forms.js:776 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1266 templates/modals.html:19 +#: templates/js/translated/forms.js:1269 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1703 +#: templates/js/translated/forms.js:1706 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1919 templates/search.html:29 +#: templates/js/translated/forms.js:1922 templates/search.html:29 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2172 +#: templates/js/translated/forms.js:2175 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:2640 +#: templates/js/translated/forms.js:2643 msgid "Select Columns" msgstr "" @@ -9256,7 +9373,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1113 +#: templates/js/translated/stock.js:1112 msgid "Select Stock Items" msgstr "" @@ -9590,7 +9707,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2184 +#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2179 msgid "Stock Status" msgstr "" @@ -9614,7 +9731,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1982 templates/js/translated/part.js:983 +#: templates/js/translated/order.js:1982 templates/js/translated/part.js:1254 msgid "No purchase orders found" msgstr "" @@ -9647,8 +9764,8 @@ msgstr "" msgid "Total" msgstr "" -#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1085 -#: templates/js/translated/part.js:1137 +#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1356 +#: templates/js/translated/part.js:1408 msgid "Total Quantity" msgstr "" @@ -9666,11 +9783,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2388 templates/js/translated/order.js:3900 -#: templates/js/translated/part.js:1121 +#: templates/js/translated/part.js:1392 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1166 +#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1437 msgid "Receive line item" msgstr "" @@ -9791,7 +9908,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3623 templates/js/translated/order.js:3712 -#: templates/js/translated/stock.js:1641 +#: templates/js/translated/stock.js:1640 msgid "Shipped to customer" msgstr "" @@ -9835,334 +9952,358 @@ msgstr "" msgid "No matching lines" msgstr "" -#: templates/js/translated/part.js:52 +#: templates/js/translated/part.js:55 msgid "Part Attributes" msgstr "" -#: templates/js/translated/part.js:56 +#: templates/js/translated/part.js:59 msgid "Part Creation Options" msgstr "" -#: templates/js/translated/part.js:60 +#: templates/js/translated/part.js:63 msgid "Part Duplication Options" msgstr "" -#: templates/js/translated/part.js:64 +#: templates/js/translated/part.js:67 msgid "Supplier Options" msgstr "" -#: templates/js/translated/part.js:78 +#: templates/js/translated/part.js:81 msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:168 +#: templates/js/translated/part.js:171 msgid "Create Initial Stock" msgstr "" -#: templates/js/translated/part.js:169 +#: templates/js/translated/part.js:172 msgid "Create an initial stock item for this part" msgstr "" -#: templates/js/translated/part.js:176 +#: templates/js/translated/part.js:179 msgid "Initial Stock Quantity" msgstr "" -#: templates/js/translated/part.js:177 +#: templates/js/translated/part.js:180 msgid "Specify initial stock quantity for this part" msgstr "" -#: templates/js/translated/part.js:184 +#: templates/js/translated/part.js:187 msgid "Select destination stock location" msgstr "" -#: templates/js/translated/part.js:202 +#: templates/js/translated/part.js:205 msgid "Copy Category Parameters" msgstr "" -#: templates/js/translated/part.js:203 +#: templates/js/translated/part.js:206 msgid "Copy parameter templates from selected part category" msgstr "" -#: templates/js/translated/part.js:211 +#: templates/js/translated/part.js:214 msgid "Add Supplier Data" msgstr "" -#: templates/js/translated/part.js:212 +#: templates/js/translated/part.js:215 msgid "Create initial supplier data for this part" msgstr "" -#: templates/js/translated/part.js:268 +#: templates/js/translated/part.js:271 msgid "Copy Image" msgstr "" -#: templates/js/translated/part.js:269 +#: templates/js/translated/part.js:272 msgid "Copy image from original part" msgstr "" -#: templates/js/translated/part.js:277 +#: templates/js/translated/part.js:280 msgid "Copy bill of materials from original part" msgstr "" -#: templates/js/translated/part.js:284 +#: templates/js/translated/part.js:287 msgid "Copy Parameters" msgstr "" -#: templates/js/translated/part.js:285 +#: templates/js/translated/part.js:288 msgid "Copy parameter data from original part" msgstr "" -#: templates/js/translated/part.js:298 +#: templates/js/translated/part.js:301 msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:313 templates/js/translated/stock.js:122 +#: templates/js/translated/part.js:316 templates/js/translated/stock.js:121 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:329 +#: templates/js/translated/part.js:332 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:342 +#: templates/js/translated/part.js:345 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:347 +#: templates/js/translated/part.js:350 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:359 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:360 +#: templates/js/translated/part.js:363 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:368 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:394 +#: templates/js/translated/part.js:397 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:396 +#: templates/js/translated/part.js:399 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:407 +#: templates/js/translated/part.js:410 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:459 +#: templates/js/translated/part.js:462 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:460 +#: templates/js/translated/part.js:463 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:477 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:476 +#: templates/js/translated/part.js:479 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:477 +#: templates/js/translated/part.js:480 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:478 +#: templates/js/translated/part.js:481 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:485 +#: templates/js/translated/part.js:488 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:521 +#: templates/js/translated/part.js:524 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:523 +#: templates/js/translated/part.js:526 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:531 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:530 +#: templates/js/translated/part.js:533 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:547 +#: templates/js/translated/part.js:550 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:560 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:560 +#: templates/js/translated/part.js:563 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:585 +#: templates/js/translated/part.js:588 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1554 +#: templates/js/translated/part.js:612 templates/js/translated/part.js:1825 #: templates/js/translated/table_filters.js:488 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:622 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:653 templates/js/translated/part.js:739 +#: templates/js/translated/part.js:656 templates/js/translated/part.js:1010 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:657 templates/js/translated/part.js:743 +#: templates/js/translated/part.js:660 templates/js/translated/part.js:1014 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:669 +#: templates/js/translated/part.js:672 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:673 +#: templates/js/translated/part.js:676 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:815 +#: templates/js/translated/part.js:761 +msgid "Stock item has not been checked recently" +msgstr "" + +#: templates/js/translated/part.js:769 +msgid "Update item" +msgstr "" + +#: templates/js/translated/part.js:770 +msgid "Delete item" +msgstr "" + +#: templates/js/translated/part.js:871 +msgid "No stocktake information available" +msgstr "" + +#: templates/js/translated/part.js:910 templates/js/translated/part.js:933 +msgid "Edit Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:914 templates/js/translated/part.js:945 +msgid "Delete Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:1086 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1236 +#: templates/js/translated/part.js:1507 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1260 +#: templates/js/translated/part.js:1531 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1327 templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1598 templates/js/translated/part.js:1936 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1521 +#: templates/js/translated/part.js:1792 msgid "No category" msgstr "" -#: templates/js/translated/part.js:1552 +#: templates/js/translated/part.js:1823 msgid "No stock" msgstr "" -#: templates/js/translated/part.js:1576 +#: templates/js/translated/part.js:1847 msgid "Allocated to build orders" msgstr "" -#: templates/js/translated/part.js:1580 +#: templates/js/translated/part.js:1851 msgid "Allocated to sales orders" msgstr "" -#: templates/js/translated/part.js:1679 templates/js/translated/part.js:1922 -#: templates/js/translated/stock.js:2387 +#: templates/js/translated/part.js:1960 templates/js/translated/part.js:2203 +#: templates/js/translated/stock.js:2382 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1695 +#: templates/js/translated/part.js:1976 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1761 +#: templates/js/translated/part.js:2042 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1766 +#: templates/js/translated/part.js:2047 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1771 +#: templates/js/translated/part.js:2052 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1784 +#: templates/js/translated/part.js:2065 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1942 templates/js/translated/stock.js:2407 +#: templates/js/translated/part.js:2223 templates/js/translated/stock.js:2402 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2022 +#: templates/js/translated/part.js:2303 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2038 +#: templates/js/translated/part.js:2319 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2383 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2153 templates/js/translated/stock.js:1338 +#: templates/js/translated/part.js:2434 templates/js/translated/stock.js:1337 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2154 templates/js/translated/stock.js:1339 -#: templates/js/translated/stock.js:1599 +#: templates/js/translated/part.js:2435 templates/js/translated/stock.js:1338 +#: templates/js/translated/stock.js:1598 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2441 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2182 +#: templates/js/translated/part.js:2463 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2196 +#: templates/js/translated/part.js:2477 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2277 templates/js/translated/part.js:2278 +#: templates/js/translated/part.js:2558 templates/js/translated/part.js:2559 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2280 +#: templates/js/translated/part.js:2561 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:2286 +#: templates/js/translated/part.js:2567 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:2336 +#: templates/js/translated/part.js:2617 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2623 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:2438 +#: templates/js/translated/part.js:2719 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2454 +#: templates/js/translated/part.js:2735 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:2499 +#: templates/js/translated/part.js:2780 msgid "Minimum Stock Level" msgstr "" @@ -10290,388 +10431,388 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:74 +#: templates/js/translated/stock.js:73 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:104 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:114 +#: templates/js/translated/stock.js:113 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:148 +#: templates/js/translated/stock.js:147 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:163 +#: templates/js/translated/stock.js:162 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:177 +#: templates/js/translated/stock.js:176 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:184 +#: templates/js/translated/stock.js:183 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:193 +#: templates/js/translated/stock.js:192 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:197 +#: templates/js/translated/stock.js:196 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:201 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:256 +#: templates/js/translated/stock.js:255 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:298 +#: templates/js/translated/stock.js:297 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:304 +#: templates/js/translated/stock.js:303 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:368 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:389 +#: templates/js/translated/stock.js:388 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:405 +#: templates/js/translated/stock.js:404 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:410 +#: templates/js/translated/stock.js:409 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:431 +#: templates/js/translated/stock.js:430 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:481 +#: templates/js/translated/stock.js:480 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:494 +#: templates/js/translated/stock.js:493 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:519 +#: templates/js/translated/stock.js:518 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:523 templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:522 templates/js/translated/stock.js:523 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:540 +#: templates/js/translated/stock.js:539 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:560 +#: templates/js/translated/stock.js:559 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:568 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:692 +#: templates/js/translated/stock.js:691 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:693 +#: templates/js/translated/stock.js:692 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:770 +#: templates/js/translated/stock.js:769 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:771 +#: templates/js/translated/stock.js:770 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:773 +#: templates/js/translated/stock.js:772 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:774 +#: templates/js/translated/stock.js:773 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:863 +#: templates/js/translated/stock.js:862 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:864 +#: templates/js/translated/stock.js:863 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:958 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:959 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:966 +#: templates/js/translated/stock.js:965 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:967 +#: templates/js/translated/stock.js:966 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:971 +#: templates/js/translated/stock.js:970 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:972 +#: templates/js/translated/stock.js:971 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:976 +#: templates/js/translated/stock.js:975 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:977 users/models.py:220 +#: templates/js/translated/stock.js:976 users/models.py:221 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:981 +#: templates/js/translated/stock.js:980 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1114 +#: templates/js/translated/stock.js:1113 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1141 +#: templates/js/translated/stock.js:1140 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1277 +#: templates/js/translated/stock.js:1276 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1279 +#: templates/js/translated/stock.js:1278 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1284 +#: templates/js/translated/stock.js:1283 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1331 +#: templates/js/translated/stock.js:1330 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1334 +#: templates/js/translated/stock.js:1333 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1360 +#: templates/js/translated/stock.js:1359 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1417 +#: templates/js/translated/stock.js:1416 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1582 +#: templates/js/translated/stock.js:1581 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1604 +#: templates/js/translated/stock.js:1603 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1633 +#: templates/js/translated/stock.js:1632 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1637 +#: templates/js/translated/stock.js:1636 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1645 +#: templates/js/translated/stock.js:1644 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1651 +#: templates/js/translated/stock.js:1650 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1820 +#: templates/js/translated/stock.js:1815 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1825 +#: templates/js/translated/stock.js:1820 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1828 +#: templates/js/translated/stock.js:1823 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1831 +#: templates/js/translated/stock.js:1826 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1833 +#: templates/js/translated/stock.js:1828 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1835 +#: templates/js/translated/stock.js:1830 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1838 +#: templates/js/translated/stock.js:1833 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1837 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1844 +#: templates/js/translated/stock.js:1839 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1846 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1853 +#: templates/js/translated/stock.js:1848 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1855 +#: templates/js/translated/stock.js:1850 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1859 +#: templates/js/translated/stock.js:1854 #: templates/js/translated/table_filters.js:216 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1989 +#: templates/js/translated/stock.js:1984 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2026 +#: templates/js/translated/stock.js:2021 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2199 +#: templates/js/translated/stock.js:2194 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2213 +#: templates/js/translated/stock.js:2208 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2214 +#: templates/js/translated/stock.js:2209 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2446 +#: templates/js/translated/stock.js:2441 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2536 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2557 +#: templates/js/translated/stock.js:2552 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2579 +#: templates/js/translated/stock.js:2574 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2598 +#: templates/js/translated/stock.js:2593 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2617 +#: templates/js/translated/stock.js:2612 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2635 +#: templates/js/translated/stock.js:2630 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2658 +#: templates/js/translated/stock.js:2653 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2666 +#: templates/js/translated/stock.js:2661 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2737 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2793 templates/js/translated/stock.js:2829 +#: templates/js/translated/stock.js:2788 templates/js/translated/stock.js:2824 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2845 +#: templates/js/translated/stock.js:2840 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2866 +#: templates/js/translated/stock.js:2861 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2867 +#: templates/js/translated/stock.js:2862 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2869 +#: templates/js/translated/stock.js:2864 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2870 +#: templates/js/translated/stock.js:2865 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:2866 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2872 +#: templates/js/translated/stock.js:2867 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2885 +#: templates/js/translated/stock.js:2880 msgid "Select part to install" msgstr "" @@ -10696,7 +10837,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:92 -#: templates/js/translated/table_filters.js:516 +#: templates/js/translated/table_filters.js:520 msgid "Has Pricing" msgstr "" @@ -10912,6 +11053,10 @@ msgstr "" msgid "Purchasable" msgstr "" +#: templates/js/translated/table_filters.js:504 +msgid "Has stocktake entries" +msgstr "" + #: templates/js/translated/tables.js:70 msgid "Display calendar view" msgstr "" @@ -11206,35 +11351,35 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:207 +#: users/models.py:208 msgid "Permission set" msgstr "" -#: users/models.py:215 +#: users/models.py:216 msgid "Group" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "View" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "Permission to view items" msgstr "" -#: users/models.py:220 +#: users/models.py:221 msgid "Permission to add items" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Change" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Permissions to edit items" msgstr "" -#: users/models.py:224 +#: users/models.py:225 msgid "Permission to delete items" msgstr "" diff --git a/InvenTree/locale/tr/LC_MESSAGES/django.po b/InvenTree/locale/tr/LC_MESSAGES/django.po index f640224781..7c5f54e5a2 100644 --- a/InvenTree/locale/tr/LC_MESSAGES/django.po +++ b/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: 2022-12-30 20:46+0000\n" -"PO-Revision-Date: 2022-12-31 11:30\n" +"POT-Creation-Date: 2023-01-01 11:05+0000\n" +"PO-Revision-Date: 2023-01-01 11:26\n" "Last-Translator: \n" "Language-Team: Turkish\n" "Language: tr_TR\n" @@ -34,7 +34,7 @@ msgstr "Tarih giriniz" #: company/templates/company/sidebar.html:25 order/models.py:943 #: order/templates/order/po_sidebar.html:11 #: order/templates/order/so_sidebar.html:17 part/admin.py:27 -#: part/templates/part/part_sidebar.html:57 +#: part/models.py:2932 part/templates/part/part_sidebar.html:62 #: report/templates/report/inventree_build_order_base.html:172 #: stock/admin.py:103 stock/models.py:2061 stock/models.py:2169 #: stock/serializers.py:321 stock/serializers.py:454 stock/serializers.py:535 @@ -44,8 +44,8 @@ msgstr "Tarih giriniz" #: templates/js/translated/company.js:1023 #: templates/js/translated/order.js:2435 templates/js/translated/order.js:2569 #: templates/js/translated/order.js:3067 templates/js/translated/order.js:4004 -#: templates/js/translated/order.js:4385 templates/js/translated/stock.js:1413 -#: templates/js/translated/stock.js:2020 +#: templates/js/translated/order.js:4385 templates/js/translated/part.js:882 +#: templates/js/translated/stock.js:1412 templates/js/translated/stock.js:2015 msgid "Notes" msgstr "Notlar" @@ -204,18 +204,18 @@ msgstr "Ek" msgid "Select file to attach" msgstr "Eklenecek dosyayı seç" -#: InvenTree/models.py:412 common/models.py:2366 company/models.py:129 +#: InvenTree/models.py:412 common/models.py:2373 company/models.py:129 #: company/models.py:281 company/models.py:516 order/models.py:85 -#: order/models.py:1282 part/admin.py:25 part/models.py:865 +#: order/models.py:1282 part/admin.py:25 part/models.py:866 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: stock/admin.py:102 templates/js/translated/company.js:692 #: templates/js/translated/company.js:1012 -#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1615 +#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1886 msgid "Link" msgstr "Bağlantı" -#: InvenTree/models.py:413 build/models.py:290 part/models.py:866 +#: InvenTree/models.py:413 build/models.py:290 part/models.py:867 #: stock/models.py:716 msgid "Link to external URL" msgstr "Harici URL'ye bağlantı" @@ -229,12 +229,13 @@ msgstr "Yorum" msgid "File comment" msgstr "Dosya yorumu" -#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1810 -#: common/models.py:1811 common/models.py:2034 common/models.py:2035 -#: common/models.py:2296 common/models.py:2297 part/models.py:2948 -#: part/models.py:2968 plugin/models.py:264 plugin/models.py:265 +#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1817 +#: common/models.py:1818 common/models.py:2041 common/models.py:2042 +#: common/models.py:2303 common/models.py:2304 part/models.py:2940 +#: part/models.py:3026 part/models.py:3046 plugin/models.py:264 +#: plugin/models.py:265 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2689 +#: templates/js/translated/stock.js:2684 msgid "User" msgstr "Kullanıcı" @@ -271,19 +272,20 @@ msgstr "Dosya adı değiştirilirken hata" msgid "Invalid choice" msgstr "Geçersiz seçim" -#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2020 -#: company/models.py:363 label/models.py:101 part/models.py:809 -#: part/models.py:3123 plugin/models.py:94 report/models.py:152 +#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2027 +#: company/models.py:363 label/models.py:101 part/models.py:810 +#: part/models.py:3201 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 +#: templates/InvenTree/settings/notifications.html:17 #: templates/InvenTree/settings/plugin.html:60 #: templates/InvenTree/settings/plugin.html:104 #: templates/InvenTree/settings/plugin_settings.html:23 -#: templates/InvenTree/settings/settings.html:344 +#: templates/InvenTree/settings/settings.html:345 #: templates/js/translated/company.js:581 #: templates/js/translated/company.js:794 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:711 templates/js/translated/part.js:880 -#: templates/js/translated/part.js:2010 templates/js/translated/stock.js:2434 +#: templates/js/translated/part.js:982 templates/js/translated/part.js:1151 +#: templates/js/translated/part.js:2291 templates/js/translated/stock.js:2429 msgid "Name" msgstr "Adı" @@ -292,24 +294,25 @@ msgstr "Adı" #: company/models.py:522 company/templates/company/company_base.html:72 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:108 label/models.py:108 -#: order/models.py:83 part/admin.py:141 part/admin.py:222 part/models.py:832 -#: part/models.py:3132 part/templates/part/category.html:75 +#: order/models.py:83 part/admin.py:174 part/admin.py:255 part/models.py:833 +#: part/models.py:3210 part/templates/part/category.html:75 #: part/templates/part/part_base.html:172 #: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/admin.py:25 stock/templates/stock/location.html:117 +#: templates/InvenTree/settings/notifications.html:19 #: templates/InvenTree/settings/plugin_settings.html:28 -#: templates/InvenTree/settings/settings.html:355 +#: templates/InvenTree/settings/settings.html:356 #: templates/js/translated/bom.js:592 templates/js/translated/bom.js:895 #: templates/js/translated/build.js:2596 templates/js/translated/company.js:445 #: templates/js/translated/company.js:703 #: templates/js/translated/company.js:987 templates/js/translated/order.js:2030 #: templates/js/translated/order.js:2267 templates/js/translated/order.js:2845 -#: templates/js/translated/part.js:773 templates/js/translated/part.js:1223 -#: templates/js/translated/part.js:1497 templates/js/translated/part.js:2046 -#: templates/js/translated/part.js:2121 templates/js/translated/stock.js:1787 -#: templates/js/translated/stock.js:2466 templates/js/translated/stock.js:2526 +#: templates/js/translated/part.js:1044 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1768 templates/js/translated/part.js:2327 +#: templates/js/translated/part.js:2402 templates/js/translated/stock.js:1782 +#: templates/js/translated/stock.js:2461 templates/js/translated/stock.js:2521 msgid "Description" msgstr "Açıklama" @@ -322,7 +325,7 @@ msgid "parent" msgstr "üst" #: InvenTree/models.py:580 InvenTree/models.py:581 -#: templates/js/translated/part.js:2055 templates/js/translated/stock.js:2475 +#: templates/js/translated/part.js:2336 templates/js/translated/stock.js:2470 msgid "Path" msgstr "" @@ -354,7 +357,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:58 part/models.py:3468 +#: InvenTree/serializers.py:58 part/models.py:3546 msgid "Must be a valid number" msgstr "Geçerli bir numara olmalı" @@ -421,107 +424,107 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:639 +#: InvenTree/settings.py:642 msgid "Czech" msgstr "" -#: InvenTree/settings.py:640 +#: InvenTree/settings.py:643 msgid "Danish" msgstr "" -#: InvenTree/settings.py:641 +#: InvenTree/settings.py:644 msgid "German" msgstr "Almanca" -#: InvenTree/settings.py:642 +#: InvenTree/settings.py:645 msgid "Greek" msgstr "Yunanca" -#: InvenTree/settings.py:643 +#: InvenTree/settings.py:646 msgid "English" msgstr "İngilizce" -#: InvenTree/settings.py:644 +#: InvenTree/settings.py:647 msgid "Spanish" msgstr "İspanyolca" -#: InvenTree/settings.py:645 +#: InvenTree/settings.py:648 msgid "Spanish (Mexican)" msgstr "İspanyolca(Meksika)" -#: InvenTree/settings.py:646 +#: InvenTree/settings.py:649 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:647 +#: InvenTree/settings.py:650 msgid "French" msgstr "Fransızca" -#: InvenTree/settings.py:648 +#: InvenTree/settings.py:651 msgid "Hebrew" msgstr "İbranice" -#: InvenTree/settings.py:649 +#: InvenTree/settings.py:652 msgid "Hungarian" msgstr "Macarca" -#: InvenTree/settings.py:650 +#: InvenTree/settings.py:653 msgid "Italian" msgstr "İtalyanca" -#: InvenTree/settings.py:651 +#: InvenTree/settings.py:654 msgid "Japanese" msgstr "Japonca" -#: InvenTree/settings.py:652 +#: InvenTree/settings.py:655 msgid "Korean" msgstr "Korece" -#: InvenTree/settings.py:653 +#: InvenTree/settings.py:656 msgid "Dutch" msgstr "Flemenkçe" -#: InvenTree/settings.py:654 +#: InvenTree/settings.py:657 msgid "Norwegian" msgstr "Norveççe" -#: InvenTree/settings.py:655 +#: InvenTree/settings.py:658 msgid "Polish" msgstr "Polonyaca" -#: InvenTree/settings.py:656 +#: InvenTree/settings.py:659 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:657 +#: InvenTree/settings.py:660 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:658 +#: InvenTree/settings.py:661 msgid "Russian" msgstr "Rusça" -#: InvenTree/settings.py:659 +#: InvenTree/settings.py:662 msgid "Slovenian" msgstr "" -#: InvenTree/settings.py:660 +#: InvenTree/settings.py:663 msgid "Swedish" msgstr "İsveççe" -#: InvenTree/settings.py:661 +#: InvenTree/settings.py:664 msgid "Thai" msgstr "Tay dili" -#: InvenTree/settings.py:662 +#: InvenTree/settings.py:665 msgid "Turkish" msgstr "Türkçe" -#: InvenTree/settings.py:663 +#: InvenTree/settings.py:666 msgid "Vietnamese" msgstr "Vietnamca" -#: InvenTree/settings.py:664 +#: InvenTree/settings.py:667 msgid "Chinese" msgstr "Çince" @@ -652,7 +655,7 @@ msgstr "Üst ögeden ayır" msgid "Split child item" msgstr "Alt ögeyi ayır" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2124 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2119 msgid "Merged stock items" msgstr "Stok parçalarını birleştir" @@ -756,7 +759,7 @@ msgstr "Yapım İşi Emri" #: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:141 -#: templates/InvenTree/settings/sidebar.html:47 +#: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:254 users/models.py:41 msgid "Build Orders" msgstr "Yapım İşi Emirleri" @@ -766,8 +769,9 @@ msgid "Build Order Reference" msgstr "Yapım İşi Emri Referansı" #: build/models.py:155 order/models.py:241 order/models.py:651 -#: order/models.py:941 part/admin.py:224 part/models.py:3378 +#: order/models.py:941 part/admin.py:257 part/models.py:3456 #: part/templates/part/upload_bom.html:54 +#: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 #: templates/js/translated/bom.js:729 templates/js/translated/bom.js:905 @@ -793,13 +797,15 @@ msgstr "Bu yapım işinin tahsis edildiği yapım işi emri" #: build/models.py:180 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:684 #: order/models.py:1038 order/models.py:1149 order/models.py:1150 -#: part/models.py:381 part/models.py:2781 part/models.py:2894 -#: part/models.py:2909 part/models.py:2928 part/models.py:2946 -#: part/models.py:3045 part/models.py:3166 part/models.py:3258 -#: part/models.py:3343 part/models.py:3659 part/serializers.py:853 -#: part/templates/part/part_app_base.html:8 +#: part/models.py:382 part/models.py:2799 part/models.py:2912 +#: part/models.py:2972 part/models.py:2987 part/models.py:3006 +#: part/models.py:3024 part/models.py:3123 part/models.py:3244 +#: part/models.py:3336 part/models.py:3421 part/models.py:3737 +#: part/serializers.py:894 part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 +#: report/templates/report/inventree_bill_of_materials_report.html:110 +#: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_base.html:109 #: report/templates/report/inventree_po_report.html:89 #: report/templates/report/inventree_so_report.html:90 stock/serializers.py:90 @@ -819,12 +825,12 @@ msgstr "Bu yapım işinin tahsis edildiği yapım işi emri" #: templates/js/translated/order.js:1172 templates/js/translated/order.js:1676 #: templates/js/translated/order.js:2252 templates/js/translated/order.js:3199 #: templates/js/translated/order.js:3595 templates/js/translated/order.js:3825 -#: templates/js/translated/part.js:1208 templates/js/translated/part.js:1280 -#: templates/js/translated/part.js:1474 templates/js/translated/pricing.js:102 -#: templates/js/translated/stock.js:618 templates/js/translated/stock.js:783 -#: templates/js/translated/stock.js:993 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2552 templates/js/translated/stock.js:2747 -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/part.js:1479 templates/js/translated/part.js:1551 +#: templates/js/translated/part.js:1745 templates/js/translated/pricing.js:102 +#: templates/js/translated/stock.js:617 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:992 templates/js/translated/stock.js:1738 +#: templates/js/translated/stock.js:2547 templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2879 msgid "Part" msgstr "Parça" @@ -890,7 +896,7 @@ msgstr "Sıra numarası" msgid "Batch code for this build output" msgstr "Yapım işi çıktısı için sıra numarası" -#: build/models.py:252 order/models.py:87 part/models.py:1001 +#: build/models.py:252 order/models.py:87 part/models.py:1002 #: part/templates/part/part_base.html:318 templates/js/translated/order.js:2858 msgid "Creation Date" msgstr "Oluşturulma tarihi" @@ -923,7 +929,7 @@ msgstr "Bu yapım işi emrini veren kullanıcı" #: build/models.py:283 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:101 #: order/templates/order/order_base.html:185 -#: order/templates/order/sales_order_base.html:183 part/models.py:1005 +#: order/templates/order/sales_order_base.html:183 part/models.py:1006 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2658 templates/js/translated/order.js:2064 msgid "Responsible" @@ -936,7 +942,7 @@ msgstr "Bu yapım işi emrinden sorumlu kullanıcı" #: build/models.py:289 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:188 -#: part/templates/part/part_base.html:376 stock/models.py:714 +#: part/templates/part/part_base.html:390 stock/models.py:714 #: stock/templates/stock/item_base.html:203 msgid "External Link" msgstr "Harici Bağlantı" @@ -1011,8 +1017,8 @@ msgstr "Yapım işi için tahsis edilen parçalar" #: templates/js/translated/order.js:107 templates/js/translated/order.js:3200 #: templates/js/translated/order.js:3502 templates/js/translated/order.js:3507 #: templates/js/translated/order.js:3602 templates/js/translated/order.js:3694 -#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 -#: templates/js/translated/stock.js:2625 +#: templates/js/translated/part.js:803 templates/js/translated/stock.js:618 +#: templates/js/translated/stock.js:783 templates/js/translated/stock.js:2620 msgid "Stock Item" msgstr "Stok Kalemi" @@ -1022,12 +1028,13 @@ msgstr "Kaynak stok kalemi" #: build/models.py:1364 build/serializers.py:192 #: build/templates/build/build_base.html:85 -#: build/templates/build/detail.html:34 common/models.py:1842 +#: build/templates/build/detail.html:34 common/models.py:1849 #: order/models.py:934 order/models.py:1460 order/serializers.py:1206 -#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:223 -#: part/forms.py:40 part/models.py:3359 +#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:256 +#: part/forms.py:40 part/models.py:2919 part/models.py:3437 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 +#: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_base.html:113 #: report/templates/report/inventree_po_report.html:90 #: report/templates/report/inventree_so_report.html:91 @@ -1049,13 +1056,14 @@ msgstr "Kaynak stok kalemi" #: templates/js/translated/order.js:3201 templates/js/translated/order.js:3521 #: templates/js/translated/order.js:3608 templates/js/translated/order.js:3700 #: templates/js/translated/order.js:3847 templates/js/translated/order.js:4338 -#: templates/js/translated/part.js:1078 templates/js/translated/part.js:2568 +#: templates/js/translated/part.js:805 templates/js/translated/part.js:876 +#: templates/js/translated/part.js:1349 templates/js/translated/part.js:2849 #: templates/js/translated/pricing.js:114 #: templates/js/translated/pricing.js:207 #: templates/js/translated/pricing.js:255 -#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:490 -#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:814 -#: templates/js/translated/stock.js:2674 templates/js/translated/stock.js:2759 +#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:489 +#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:813 +#: templates/js/translated/stock.js:2669 templates/js/translated/stock.js:2754 msgid "Quantity" msgstr "Miktar" @@ -1097,8 +1105,8 @@ msgid "Enter quantity for build output" msgstr "Yapım işi çıktısı için miktarını girin" #: build/serializers.py:207 build/serializers.py:683 order/models.py:327 -#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:645 -#: part/serializers.py:1016 stock/models.py:574 stock/models.py:1312 +#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:686 +#: part/serializers.py:1057 stock/models.py:574 stock/models.py:1312 #: stock/serializers.py:294 msgid "Quantity must be greater than zero" msgstr "" @@ -1113,7 +1121,7 @@ msgstr "" #: build/serializers.py:231 order/serializers.py:463 order/serializers.py:1210 #: stock/serializers.py:303 templates/js/translated/order.js:1545 -#: templates/js/translated/stock.js:303 templates/js/translated/stock.js:491 +#: templates/js/translated/stock.js:302 templates/js/translated/stock.js:490 msgid "Serial Numbers" msgstr "Seri Numaraları" @@ -1146,9 +1154,10 @@ msgstr "" #: templates/js/translated/build.js:1759 templates/js/translated/order.js:1572 #: templates/js/translated/order.js:3514 templates/js/translated/order.js:3619 #: templates/js/translated/order.js:3627 templates/js/translated/order.js:3708 -#: templates/js/translated/part.js:183 templates/js/translated/stock.js:620 -#: templates/js/translated/stock.js:785 templates/js/translated/stock.js:995 -#: templates/js/translated/stock.js:1895 templates/js/translated/stock.js:2566 +#: templates/js/translated/part.js:186 templates/js/translated/part.js:804 +#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 +#: templates/js/translated/stock.js:994 templates/js/translated/stock.js:1890 +#: templates/js/translated/stock.js:2561 msgid "Location" msgstr "Konum" @@ -1162,8 +1171,8 @@ msgstr "" #: stock/templates/stock/item_base.html:421 #: templates/js/translated/barcode.js:237 templates/js/translated/build.js:2630 #: templates/js/translated/order.js:1681 templates/js/translated/order.js:2034 -#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1870 -#: templates/js/translated/stock.js:2643 templates/js/translated/stock.js:2775 +#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:2638 templates/js/translated/stock.js:2770 msgid "Status" msgstr "Durum" @@ -1239,8 +1248,8 @@ msgstr "Gerekli yapım işi miktarı tamamlanmadı" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:595 build/serializers.py:640 part/models.py:3495 -#: part/models.py:3651 +#: build/serializers.py:595 build/serializers.py:640 part/models.py:3573 +#: part/models.py:3729 msgid "BOM Item" msgstr "" @@ -1406,7 +1415,7 @@ msgstr "Stok, yapım işi emri için tamamen tahsis edilemedi" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2670 templates/js/translated/order.js:2051 #: templates/js/translated/order.js:2382 templates/js/translated/order.js:2866 -#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1093 +#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1364 msgid "Target Date" msgstr "Hedeflenen tarih" @@ -1484,8 +1493,8 @@ msgstr "" #: stock/templates/stock/item_base.html:168 #: templates/js/translated/build.js:1250 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:1884 -#: templates/js/translated/stock.js:2782 +#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:1879 +#: templates/js/translated/stock.js:2777 #: templates/js/translated/table_filters.js:179 #: templates/js/translated/table_filters.js:270 msgid "Batch" @@ -1617,8 +1626,8 @@ msgstr "Tamamlanmış Yapım İşi Çıktıları" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:86 #: order/templates/order/sales_order_detail.html:140 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:210 -#: part/templates/part/part_sidebar.html:55 stock/templates/stock/item.html:117 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:233 +#: part/templates/part/part_sidebar.html:60 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" msgstr "Ekler" @@ -1635,7 +1644,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:316 +#: build/templates/build/index.html:18 part/templates/part/detail.html:339 msgid "New Build Order" msgstr "Yeni Yapım İşi Emri" @@ -1928,9 +1937,9 @@ msgstr "Kategori Paremetre Sablonu Kopyala" msgid "Copy category parameter templates when creating a part" msgstr "Parça oluştururken kategori parametre şablonlarını kopyala" -#: common/models.py:1014 part/admin.py:41 part/models.py:3168 +#: common/models.py:1014 part/admin.py:41 part/models.py:3246 #: report/models.py:158 templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:504 +#: templates/js/translated/table_filters.js:508 msgid "Template" msgstr "Şablon" @@ -1938,7 +1947,7 @@ msgstr "Şablon" msgid "Parts are templates by default" msgstr "Parçaları varsayılan olan şablondur" -#: common/models.py:1021 part/admin.py:37 part/admin.py:229 part/models.py:957 +#: common/models.py:1021 part/admin.py:37 part/admin.py:262 part/models.py:958 #: templates/js/translated/bom.js:1595 #: templates/js/translated/table_filters.js:196 #: templates/js/translated/table_filters.js:467 @@ -1949,7 +1958,7 @@ msgstr "Montaj" 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:1028 part/admin.py:38 part/models.py:963 +#: common/models.py:1028 part/admin.py:38 part/models.py:964 #: templates/js/translated/table_filters.js:475 msgid "Component" msgstr "Bileşen" @@ -1958,7 +1967,7 @@ msgstr "Bileşen" 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:1035 part/admin.py:39 part/models.py:974 +#: common/models.py:1035 part/admin.py:39 part/models.py:975 msgid "Purchaseable" msgstr "Satın Alınabilir" @@ -1966,7 +1975,7 @@ msgstr "Satın Alınabilir" msgid "Parts are purchaseable by default" msgstr "Parçalar varsayılan olarak satın alınabilir" -#: common/models.py:1042 part/admin.py:40 part/models.py:979 +#: common/models.py:1042 part/admin.py:40 part/models.py:980 #: templates/js/translated/table_filters.js:496 msgid "Salable" msgstr "Satılabilir" @@ -1975,10 +1984,10 @@ msgstr "Satılabilir" msgid "Parts are salable by default" msgstr "Parçalar varsayılan olarak satılabilir" -#: common/models.py:1049 part/admin.py:42 part/models.py:969 +#: common/models.py:1049 part/admin.py:42 part/models.py:970 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:120 -#: templates/js/translated/table_filters.js:508 +#: templates/js/translated/table_filters.js:512 msgid "Trackable" msgstr "Takip Edilebilir" @@ -1986,10 +1995,10 @@ msgstr "Takip Edilebilir" msgid "Parts are trackable by default" msgstr "Parçalar varsayılan olarak takip edilebilir" -#: common/models.py:1056 part/admin.py:43 part/models.py:989 +#: common/models.py:1056 part/admin.py:43 part/models.py:990 #: part/templates/part/part_base.html:156 #: templates/js/translated/table_filters.js:42 -#: templates/js/translated/table_filters.js:512 +#: templates/js/translated/table_filters.js:516 msgid "Virtual" msgstr "Sanal" @@ -2417,7 +2426,7 @@ msgstr "" msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1461 common/models.py:1803 +#: common/models.py:1461 common/models.py:1810 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -2749,41 +2758,50 @@ msgstr "" msgid "Display part scheduling information" msgstr "" -#: common/models.py:1778 -msgid "Table String Length" +#: common/models.py:1778 part/templates/part/detail.html:61 +#: templates/js/translated/part.js:822 +msgid "Part Stocktake" msgstr "" #: common/models.py:1779 +msgid "Display part stocktake information" +msgstr "" + +#: common/models.py:1785 +msgid "Table String Length" +msgstr "" + +#: common/models.py:1786 msgid "Maximimum length limit for strings displayed in table views" msgstr "" -#: common/models.py:1843 +#: common/models.py:1850 msgid "Price break quantity" msgstr "" -#: common/models.py:1850 company/serializers.py:393 order/models.py:975 -#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1145 +#: common/models.py:1857 company/serializers.py:393 order/models.py:975 +#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1416 #: templates/js/translated/pricing.js:354 msgid "Price" msgstr "Fiyat" -#: common/models.py:1851 +#: common/models.py:1858 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2011 common/models.py:2189 +#: common/models.py:2018 common/models.py:2196 msgid "Endpoint" msgstr "" -#: common/models.py:2012 +#: common/models.py:2019 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2021 +#: common/models.py:2028 msgid "Name for this webhook" msgstr "" -#: common/models.py:2026 part/admin.py:36 part/models.py:984 +#: common/models.py:2033 part/admin.py:36 part/models.py:985 #: plugin/models.py:100 templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:116 #: templates/js/translated/table_filters.js:336 @@ -2791,131 +2809,133 @@ msgstr "" msgid "Active" msgstr "Aktif" -#: common/models.py:2027 +#: common/models.py:2034 msgid "Is this webhook active" msgstr "" -#: common/models.py:2041 +#: common/models.py:2048 msgid "Token" msgstr "" -#: common/models.py:2042 +#: common/models.py:2049 msgid "Token for access" msgstr "" -#: common/models.py:2049 +#: common/models.py:2056 msgid "Secret" msgstr "" -#: common/models.py:2050 +#: common/models.py:2057 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2156 +#: common/models.py:2163 msgid "Message ID" msgstr "" -#: common/models.py:2157 +#: common/models.py:2164 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2165 +#: common/models.py:2172 msgid "Host" msgstr "" -#: common/models.py:2166 +#: common/models.py:2173 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2173 +#: common/models.py:2180 msgid "Header" msgstr "" -#: common/models.py:2174 +#: common/models.py:2181 msgid "Header of this message" msgstr "" -#: common/models.py:2180 +#: common/models.py:2187 msgid "Body" msgstr "" -#: common/models.py:2181 +#: common/models.py:2188 msgid "Body of this message" msgstr "" -#: common/models.py:2190 +#: common/models.py:2197 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2195 +#: common/models.py:2202 msgid "Worked on" msgstr "" -#: common/models.py:2196 +#: common/models.py:2203 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2355 +#: common/models.py:2362 msgid "Id" msgstr "" -#: common/models.py:2361 templates/js/translated/news.js:35 +#: common/models.py:2368 templates/js/translated/news.js:35 msgid "Title" msgstr "" -#: common/models.py:2371 templates/js/translated/news.js:51 +#: common/models.py:2378 templates/js/translated/news.js:51 msgid "Published" msgstr "" -#: common/models.py:2376 templates/InvenTree/settings/plugin.html:62 +#: common/models.py:2383 templates/InvenTree/settings/plugin.html:62 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/news.js:47 msgid "Author" msgstr "" -#: common/models.py:2381 templates/js/translated/news.js:43 +#: common/models.py:2388 templates/js/translated/news.js:43 msgid "Summary" msgstr "" -#: common/models.py:2386 +#: common/models.py:2393 msgid "Read" msgstr "" -#: common/models.py:2387 +#: common/models.py:2394 msgid "Was this news item read?" msgstr "" -#: common/notifications.py:293 +#: common/notifications.py:294 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:295 +#: common/notifications.py:296 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:301 +#: common/notifications.py:302 msgid "Items Received" msgstr "" -#: common/notifications.py:303 +#: common/notifications.py:304 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:415 +#: common/notifications.py:416 msgid "Error raised by plugin" msgstr "" #: common/views.py:85 order/templates/order/order_wizard/po_upload.html:51 #: order/templates/order/purchase_order_detail.html:25 order/views.py:102 -#: part/views.py:107 templates/patterns/wizard/upload.html:37 +#: part/templates/part/import_wizard/part_upload.html:58 part/views.py:109 +#: templates/patterns/wizard/upload.html:37 msgid "Upload File" msgstr "Dosya Yükle" #: common/views.py:86 order/templates/order/order_wizard/match_fields.html:52 #: order/views.py:103 #: part/templates/part/import_wizard/ajax_match_fields.html:45 -#: part/views.py:108 templates/patterns/wizard/match_fields.html:51 +#: part/templates/part/import_wizard/match_fields.html:52 part/views.py:110 +#: templates/patterns/wizard/match_fields.html:51 msgid "Match Fields" msgstr "Alanları Eşleştir" @@ -2934,7 +2954,9 @@ msgstr "" #: common/views.py:509 order/templates/order/order_wizard/match_fields.html:27 #: order/templates/order/order_wizard/match_parts.html:19 #: order/templates/order/order_wizard/po_upload.html:49 +#: part/templates/part/import_wizard/match_fields.html:27 #: part/templates/part/import_wizard/match_references.html:19 +#: part/templates/part/import_wizard/part_upload.html:56 #: templates/patterns/wizard/match_fields.html:26 #: templates/patterns/wizard/upload.html:35 msgid "Previous Step" @@ -2995,7 +3017,7 @@ msgstr "" msgid "Link to external company information" msgstr "" -#: company/models.py:140 part/models.py:878 +#: company/models.py:140 part/models.py:879 msgid "Image" msgstr "Resim" @@ -3028,8 +3050,8 @@ msgid "Does this company manufacture parts?" msgstr "Bu şirket üretim yapıyor mu?" #: company/models.py:153 company/serializers.py:399 -#: company/templates/company/company_base.html:107 part/models.py:2762 -#: part/serializers.py:154 part/serializers.py:182 stock/serializers.py:182 +#: company/templates/company/company_base.html:107 part/models.py:2780 +#: part/serializers.py:156 part/serializers.py:184 stock/serializers.py:182 #: templates/InvenTree/settings/pricing.html:64 msgid "Currency" msgstr "Para birimi" @@ -3055,12 +3077,12 @@ msgstr "Parça seçin" #: templates/js/translated/company.js:433 #: templates/js/translated/company.js:534 #: templates/js/translated/company.js:669 -#: templates/js/translated/company.js:957 templates/js/translated/part.js:238 +#: templates/js/translated/company.js:957 templates/js/translated/part.js:241 #: templates/js/translated/table_filters.js:439 msgid "Manufacturer" msgstr "Üretici" -#: company/models.py:269 templates/js/translated/part.js:239 +#: company/models.py:269 templates/js/translated/part.js:242 msgid "Select manufacturer" msgstr "Üretici seçin" @@ -3070,11 +3092,11 @@ msgstr "Üretici seçin" #: templates/js/translated/company.js:533 #: templates/js/translated/company.js:685 #: templates/js/translated/company.js:976 templates/js/translated/order.js:2286 -#: templates/js/translated/part.js:249 templates/js/translated/part.js:1067 +#: templates/js/translated/part.js:252 templates/js/translated/part.js:1338 msgid "MPN" msgstr "ÜPN" -#: company/models.py:276 templates/js/translated/part.js:250 +#: company/models.py:276 templates/js/translated/part.js:253 msgid "Manufacturer Part Number" msgstr "Üretici Parça Numarası" @@ -3100,8 +3122,8 @@ msgstr "Parametre adı" #: company/models.py:370 #: report/templates/report/inventree_test_report_base.html:95 #: stock/models.py:2156 templates/js/translated/company.js:582 -#: templates/js/translated/company.js:800 templates/js/translated/part.js:889 -#: templates/js/translated/stock.js:1399 +#: templates/js/translated/company.js:800 templates/js/translated/part.js:1160 +#: templates/js/translated/stock.js:1398 msgid "Value" msgstr "Değer" @@ -3109,10 +3131,10 @@ msgstr "Değer" msgid "Parameter value" msgstr "Parametre değeri" -#: company/models.py:377 part/admin.py:26 part/models.py:951 -#: part/models.py:3128 part/templates/part/part_base.html:286 -#: templates/InvenTree/settings/settings.html:349 -#: templates/js/translated/company.js:806 templates/js/translated/part.js:895 +#: company/models.py:377 part/admin.py:26 part/models.py:952 +#: part/models.py:3206 part/templates/part/part_base.html:286 +#: templates/InvenTree/settings/settings.html:350 +#: templates/js/translated/company.js:806 templates/js/translated/part.js:1166 msgid "Units" msgstr "" @@ -3132,24 +3154,24 @@ msgstr "" #: templates/js/translated/company.js:304 #: templates/js/translated/company.js:437 #: templates/js/translated/company.js:930 templates/js/translated/order.js:2017 -#: templates/js/translated/part.js:219 templates/js/translated/part.js:1035 +#: templates/js/translated/part.js:222 templates/js/translated/part.js:1306 #: templates/js/translated/pricing.js:231 #: templates/js/translated/table_filters.js:443 msgid "Supplier" msgstr "Tedarikçi" -#: company/models.py:498 templates/js/translated/part.js:220 +#: company/models.py:498 templates/js/translated/part.js:223 msgid "Select supplier" msgstr "Tedarikçi seçin" #: company/models.py:503 company/templates/company/supplier_part.html:146 #: part/bom.py:253 part/bom.py:281 templates/js/translated/company.js:303 -#: templates/js/translated/order.js:2273 templates/js/translated/part.js:230 -#: templates/js/translated/part.js:1053 templates/js/translated/pricing.js:243 +#: templates/js/translated/order.js:2273 templates/js/translated/part.js:233 +#: templates/js/translated/part.js:1324 templates/js/translated/pricing.js:243 msgid "SKU" msgstr "" -#: company/models.py:504 templates/js/translated/part.js:231 +#: company/models.py:504 templates/js/translated/part.js:234 msgid "Supplier stock keeping unit" msgstr "" @@ -3166,24 +3188,25 @@ msgid "Supplier part description" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:181 -#: part/admin.py:225 part/models.py:3381 part/templates/part/upload_bom.html:59 +#: part/admin.py:258 part/models.py:3459 part/templates/part/upload_bom.html:59 +#: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:397 msgid "Note" msgstr "Not" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "base cost" msgstr "temel maliyet" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:534 company/templates/company/supplier_part.html:167 #: stock/admin.py:101 stock/models.py:682 #: stock/templates/stock/item_base.html:243 -#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2016 +#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2011 msgid "Packaging" msgstr "Paketleme" @@ -3196,7 +3219,7 @@ msgstr "" #: templates/js/translated/company.js:997 templates/js/translated/order.js:826 #: templates/js/translated/order.js:1253 templates/js/translated/order.js:1508 #: templates/js/translated/order.js:2317 templates/js/translated/order.js:2334 -#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1137 +#: templates/js/translated/part.js:1356 templates/js/translated/part.js:1408 msgid "Pack Quantity" msgstr "" @@ -3204,7 +3227,7 @@ msgstr "" msgid "Unit quantity supplied in a single pack" msgstr "" -#: company/models.py:544 part/models.py:1863 +#: company/models.py:544 part/models.py:1869 msgid "multiple" msgstr "çoklu" @@ -3216,8 +3239,8 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:1118 templates/js/translated/build.js:1883 -#: templates/js/translated/build.js:2770 templates/js/translated/part.js:623 -#: templates/js/translated/part.js:626 +#: templates/js/translated/build.js:2770 templates/js/translated/part.js:626 +#: templates/js/translated/part.js:629 #: templates/js/translated/table_filters.js:206 msgid "Available" msgstr "Mevcut" @@ -3300,7 +3323,7 @@ msgstr "" #: stock/templates/stock/item_base.html:399 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:429 templates/js/translated/order.js:2827 -#: templates/js/translated/stock.js:2607 +#: templates/js/translated/stock.js:2602 #: templates/js/translated/table_filters.js:447 msgid "Customer" msgstr "Müşteri" @@ -3314,7 +3337,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:206 -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:525 msgid "Remove Image" msgstr "" @@ -3323,19 +3346,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:209 -#: part/templates/part/part_base.html:514 +#: part/templates/part/part_base.html:528 #: templates/InvenTree/settings/user.html:87 #: templates/InvenTree/settings/user.html:149 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:238 -#: part/templates/part/part_base.html:543 +#: part/templates/part/part_base.html:557 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:253 -#: part/templates/part/part_base.html:598 +#: part/templates/part/part_base.html:612 msgid "Download Image" msgstr "Resmi İndirin" @@ -3351,7 +3374,7 @@ msgstr "Yeni tedarikçi parçası oluştur" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:357 +#: part/templates/part/detail.html:380 msgid "New Supplier Part" msgstr "Yeni Tedarikçi Parçası" @@ -3380,7 +3403,7 @@ msgstr "" msgid "Create new manufacturer part" msgstr "" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:387 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:410 msgid "New Manufacturer Part" msgstr "" @@ -3394,9 +3417,9 @@ msgstr "Tedarikçi Stoku" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:35 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:35 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:200 -#: templates/InvenTree/settings/sidebar.html:49 +#: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:293 templates/navbar.html:50 #: users/models.py:42 msgid "Purchase Orders" @@ -3417,9 +3440,9 @@ msgstr "Yeni Satın Alma Emri" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:39 +#: part/templates/part/detail.html:130 part/templates/part/part_sidebar.html:39 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:220 -#: templates/InvenTree/settings/sidebar.html:51 +#: templates/InvenTree/settings/sidebar.html:53 #: templates/js/translated/search.js:317 templates/navbar.html:61 #: users/models.py:43 msgid "Sales Orders" @@ -3451,7 +3474,7 @@ msgstr "Üreticiler" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:221 -#: part/templates/part/detail.html:87 part/templates/part/part_base.html:85 +#: part/templates/part/detail.html:110 part/templates/part/part_base.html:85 msgid "Order part" msgstr "Parça siparişi" @@ -3482,28 +3505,28 @@ msgid "Suppliers" msgstr "" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:368 +#: part/templates/part/detail.html:391 msgid "Delete supplier parts" msgstr "Tedarikçi parçalarını sil" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:369 part/templates/part/detail.html:399 -#: templates/js/translated/forms.js:455 templates/js/translated/helpers.js:38 -#: templates/js/translated/part.js:351 templates/js/translated/stock.js:188 -#: users/models.py:224 +#: part/templates/part/detail.html:392 part/templates/part/detail.html:422 +#: templates/js/translated/forms.js:458 templates/js/translated/helpers.js:38 +#: templates/js/translated/part.js:354 templates/js/translated/stock.js:187 +#: users/models.py:225 msgid "Delete" msgstr "" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:184 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:207 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:189 +#: part/templates/part/detail.html:212 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:62 msgid "New Parameter" @@ -3514,7 +3537,7 @@ msgid "Delete parameters" msgstr "" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:825 +#: part/templates/part/detail.html:865 msgid "Add Parameter" msgstr "" @@ -3538,7 +3561,7 @@ msgstr "" #: company/templates/company/supplier_part.html:24 stock/models.py:665 #: stock/templates/stock/item_base.html:236 #: templates/js/translated/company.js:946 templates/js/translated/order.js:1173 -#: templates/js/translated/stock.js:1974 +#: templates/js/translated/stock.js:1969 msgid "Supplier Part" msgstr "Tedarikçi Parçası" @@ -3578,7 +3601,7 @@ msgstr "" #: company/templates/company/supplier_part.html:56 #: company/templates/company/supplier_part.html:57 #: company/templates/company/supplier_part.html:222 -#: part/templates/part/detail.html:88 +#: part/templates/part/detail.html:111 msgid "Order Part" msgstr "" @@ -3630,7 +3653,7 @@ msgstr "" #: company/templates/company/supplier_part.html:204 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:198 -#: templates/js/translated/stock.js:467 +#: templates/js/translated/stock.js:466 msgid "New Stock Item" msgstr "" @@ -3662,10 +3685,10 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 -#: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/part.js:777 templates/js/translated/part.js:1378 -#: templates/js/translated/part.js:1534 templates/js/translated/stock.js:994 -#: templates/js/translated/stock.js:1799 templates/navbar.html:31 +#: templates/InvenTree/settings/sidebar.html:47 +#: templates/js/translated/part.js:1048 templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1805 templates/js/translated/stock.js:993 +#: templates/js/translated/stock.js:1794 templates/navbar.html:31 msgid "Stock" msgstr "Stok" @@ -3680,7 +3703,7 @@ msgstr "Tedarikçi Parçası Fiyatlandırması" #: company/templates/company/supplier_part_navbar.html:29 #: part/templates/part/part_sidebar.html:30 -#: templates/InvenTree/settings/sidebar.html:35 +#: templates/InvenTree/settings/sidebar.html:37 msgid "Pricing" msgstr "Fiyatlandırma" @@ -3692,7 +3715,7 @@ msgstr "Fiyatlandırma" #: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:155 templates/js/translated/search.js:225 -#: templates/js/translated/stock.js:2484 users/models.py:40 +#: templates/js/translated/stock.js:2479 users/models.py:40 msgid "Stock Items" msgstr "Stok Kalemleri" @@ -3801,9 +3824,9 @@ msgstr "" #: stock/templates/stock/item_base.html:182 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:619 templates/js/translated/order.js:1174 -#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1012 -#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1954 -#: templates/js/translated/stock.js:2588 +#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1283 +#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1949 +#: templates/js/translated/stock.js:2583 msgid "Purchase Order" msgstr "" @@ -3973,7 +3996,7 @@ msgstr "" #: order/models.py:1046 order/templates/order/order_base.html:178 #: templates/js/translated/order.js:1679 templates/js/translated/order.js:2404 -#: templates/js/translated/part.js:1129 templates/js/translated/part.js:1161 +#: templates/js/translated/part.js:1400 templates/js/translated/part.js:1432 #: templates/js/translated/table_filters.js:358 msgid "Received" msgstr "" @@ -3984,7 +4007,7 @@ msgstr "" #: order/models.py:1054 stock/models.py:800 stock/serializers.py:173 #: stock/templates/stock/item_base.html:189 -#: templates/js/translated/stock.js:2005 +#: templates/js/translated/stock.js:2000 msgid "Purchase Price" msgstr "" @@ -4350,18 +4373,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:9 #: part/templates/part/import_wizard/ajax_match_fields.html:9 +#: part/templates/part/import_wizard/match_fields.html:9 #: templates/patterns/wizard/match_fields.html:8 msgid "Missing selections for the following required columns" msgstr "Aşağıdaki gerekli sütunlar için eksik seçimler" #: order/templates/order/order_wizard/match_fields.html:20 #: part/templates/part/import_wizard/ajax_match_fields.html:20 +#: part/templates/part/import_wizard/match_fields.html:20 #: templates/patterns/wizard/match_fields.html:19 msgid "Duplicate selections found, see below. Fix them then retry submitting." msgstr "" #: order/templates/order/order_wizard/match_fields.html:29 #: order/templates/order/order_wizard/match_parts.html:21 +#: part/templates/part/import_wizard/match_fields.html:29 #: part/templates/part/import_wizard/match_references.html:21 #: templates/patterns/wizard/match_fields.html:28 msgid "Submit Selections" @@ -4369,18 +4395,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:35 #: part/templates/part/import_wizard/ajax_match_fields.html:28 +#: part/templates/part/import_wizard/match_fields.html:35 #: templates/patterns/wizard/match_fields.html:34 msgid "File Fields" msgstr "Dosya Alanları" #: order/templates/order/order_wizard/match_fields.html:42 #: part/templates/part/import_wizard/ajax_match_fields.html:35 +#: part/templates/part/import_wizard/match_fields.html:42 #: templates/patterns/wizard/match_fields.html:41 msgid "Remove column" msgstr "" #: order/templates/order/order_wizard/match_fields.html:60 #: part/templates/part/import_wizard/ajax_match_fields.html:53 +#: part/templates/part/import_wizard/match_fields.html:60 #: templates/patterns/wizard/match_fields.html:59 msgid "Duplicate selection" msgstr "" @@ -4389,12 +4418,13 @@ msgstr "" #: order/templates/order/order_wizard/match_parts.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: 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:102 templates/js/translated/build.js:485 #: templates/js/translated/build.js:641 templates/js/translated/build.js:2088 #: templates/js/translated/order.js:1122 templates/js/translated/order.js:1624 -#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:657 -#: templates/js/translated/stock.js:825 +#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:824 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4429,6 +4459,7 @@ msgstr "" #: order/templates/order/order_wizard/po_upload.html:27 #: part/templates/part/import_wizard/ajax_part_upload.html:10 +#: part/templates/part/import_wizard/part_upload.html:26 #: templates/patterns/wizard/upload.html:13 #, python-format msgid "Step %(step)s of %(count)s" @@ -4567,12 +4598,12 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:19 part/admin.py:219 part/models.py:3262 stock/admin.py:84 +#: part/admin.py:19 part/admin.py:252 part/models.py:3340 stock/admin.py:84 #: templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/admin.py:20 part/admin.py:221 part/models.py:3266 stock/admin.py:85 +#: part/admin.py:20 part/admin.py:254 part/models.py:3344 stock/admin.py:85 msgid "Part Name" msgstr "" @@ -4580,32 +4611,32 @@ msgstr "" msgid "Part Description" msgstr "" -#: part/admin.py:22 part/models.py:852 part/templates/part/part_base.html:272 -#: templates/js/translated/part.js:763 templates/js/translated/part.js:1491 -#: templates/js/translated/stock.js:1765 +#: part/admin.py:22 part/models.py:853 part/templates/part/part_base.html:272 +#: templates/js/translated/part.js:1034 templates/js/translated/part.js:1762 +#: templates/js/translated/stock.js:1760 msgid "IPN" msgstr "DPN" -#: part/admin.py:23 part/models.py:860 part/templates/part/part_base.html:279 -#: report/models.py:171 templates/js/translated/part.js:768 +#: part/admin.py:23 part/models.py:861 part/templates/part/part_base.html:279 +#: report/models.py:171 templates/js/translated/part.js:1039 msgid "Revision" msgstr "Revizyon" -#: part/admin.py:24 part/admin.py:145 part/models.py:838 +#: part/admin.py:24 part/admin.py:178 part/models.py:839 #: part/templates/part/category.html:87 part/templates/part/part_base.html:300 msgid "Keywords" msgstr "Anahtar kelimeler" -#: part/admin.py:28 part/admin.py:139 +#: part/admin.py:28 part/admin.py:172 #: templates/js/translated/model_renderers.js:338 msgid "Category ID" msgstr "" -#: part/admin.py:29 part/admin.py:140 +#: part/admin.py:29 part/admin.py:173 msgid "Category Name" msgstr "" -#: part/admin.py:30 part/admin.py:144 +#: part/admin.py:30 part/admin.py:177 msgid "Default Location ID" msgstr "" @@ -4613,7 +4644,7 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:33 part/models.py:944 part/templates/part/part_base.html:206 +#: part/admin.py:33 part/models.py:945 part/templates/part/part_base.html:206 msgid "Minimum Stock" msgstr "Minimum Stok" @@ -4625,8 +4656,8 @@ msgstr "" #: part/admin.py:48 part/bom.py:145 part/templates/part/part_base.html:213 #: templates/js/translated/bom.js:1156 templates/js/translated/build.js:1935 -#: templates/js/translated/part.js:613 templates/js/translated/part.js:633 -#: templates/js/translated/part.js:1381 templates/js/translated/part.js:1559 +#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 +#: templates/js/translated/part.js:1652 templates/js/translated/part.js:1830 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4642,115 +4673,115 @@ msgid "Allocated" msgstr "" #: part/admin.py:51 part/templates/part/part_base.html:244 -#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 -#: templates/js/translated/part.js:1385 templates/js/translated/part.js:1566 +#: templates/js/translated/part.js:619 templates/js/translated/part.js:639 +#: templates/js/translated/part.js:1656 templates/js/translated/part.js:1837 msgid "Building" msgstr "" -#: part/admin.py:52 part/models.py:2846 +#: part/admin.py:52 part/models.py:2864 msgid "Minimum Cost" msgstr "" -#: part/admin.py:53 part/models.py:2852 +#: part/admin.py:53 part/models.py:2870 msgid "Maximum Cost" msgstr "" -#: part/admin.py:142 part/admin.py:216 stock/admin.py:26 stock/admin.py:98 +#: part/admin.py:175 part/admin.py:249 stock/admin.py:26 stock/admin.py:98 msgid "Parent ID" msgstr "" -#: part/admin.py:143 part/admin.py:218 stock/admin.py:27 +#: part/admin.py:176 part/admin.py:251 stock/admin.py:27 msgid "Parent Name" msgstr "" -#: part/admin.py:146 part/templates/part/category.html:81 +#: part/admin.py:179 part/templates/part/category.html:81 #: part/templates/part/category.html:94 msgid "Category Path" msgstr "" -#: part/admin.py:149 part/models.py:382 part/templates/part/cat_link.html:3 +#: part/admin.py:182 part/models.py:383 part/templates/part/cat_link.html:3 #: part/templates/part/category.html:23 part/templates/part/category.html:134 #: part/templates/part/category.html:154 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:84 -#: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:2065 templates/js/translated/search.js:146 +#: templates/InvenTree/settings/sidebar.html:43 +#: templates/js/translated/part.js:2346 templates/js/translated/search.js:146 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "Parçalar" -#: part/admin.py:211 +#: part/admin.py:244 msgid "BOM Level" msgstr "" -#: part/admin.py:213 +#: part/admin.py:246 msgid "BOM Item ID" msgstr "" -#: part/admin.py:217 +#: part/admin.py:250 msgid "Parent IPN" msgstr "" -#: part/admin.py:220 part/models.py:3270 +#: part/admin.py:253 part/models.py:3348 msgid "Part IPN" msgstr "" -#: part/admin.py:226 templates/js/translated/pricing.js:91 +#: part/admin.py:259 templates/js/translated/pricing.js:91 #: templates/js/translated/pricing.js:732 msgid "Minimum Price" msgstr "" -#: part/admin.py:227 templates/js/translated/pricing.js:86 +#: part/admin.py:260 templates/js/translated/pricing.js:86 #: templates/js/translated/pricing.js:740 msgid "Maximum Price" msgstr "" -#: part/api.py:536 +#: part/api.py:538 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:556 +#: part/api.py:558 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:574 +#: part/api.py:576 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:660 +#: part/api.py:662 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:818 +#: part/api.py:820 msgid "Valid" msgstr "" -#: part/api.py:819 +#: part/api.py:821 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:825 +#: part/api.py:827 msgid "This option must be selected" msgstr "" -#: part/api.py:1265 +#: part/api.py:1281 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1269 +#: part/api.py:1285 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1284 +#: part/api.py:1300 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1315 part/api.py:1319 part/api.py:1334 part/api.py:1338 +#: part/api.py:1331 part/api.py:1335 part/api.py:1350 part/api.py:1354 msgid "This field is required" msgstr "" -#: part/bom.py:142 part/models.py:116 part/models.py:887 -#: part/templates/part/category.html:109 part/templates/part/part_base.html:360 +#: part/bom.py:142 part/models.py:116 part/models.py:888 +#: part/templates/part/category.html:109 part/templates/part/part_base.html:374 msgid "Default Location" msgstr "Varsayılan Konum" @@ -4801,7 +4832,7 @@ msgstr "" msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:159 part/models.py:3211 part/templates/part/category.html:16 +#: part/models.py:159 part/models.py:3289 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -4812,423 +4843,459 @@ msgstr "" msgid "Part Categories" msgstr "Parça Kategorileri" -#: part/models.py:468 +#: part/models.py:469 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:538 part/models.py:550 +#: part/models.py:539 part/models.py:551 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:640 +#: part/models.py:641 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:771 +#: part/models.py:772 msgid "Duplicate IPN not allowed in part settings" msgstr "Yinelenen DPN'ye parça ayarlarında izin verilmiyor" -#: part/models.py:776 +#: part/models.py:777 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:790 +#: part/models.py:791 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:808 part/models.py:3267 +#: part/models.py:809 part/models.py:3345 msgid "Part name" msgstr "Parça adı" -#: part/models.py:815 +#: part/models.py:816 msgid "Is Template" msgstr "Şablon Mu" -#: part/models.py:816 +#: part/models.py:817 msgid "Is this part a template part?" msgstr "Bu parça bir şablon parçası mı?" -#: part/models.py:826 +#: part/models.py:827 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:827 +#: part/models.py:828 msgid "Variant Of" msgstr "Çeşidi" -#: part/models.py:833 +#: part/models.py:834 msgid "Part description" msgstr "Parça açıklaması" -#: part/models.py:839 +#: part/models.py:840 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:846 part/models.py:2966 part/models.py:3210 +#: part/models.py:847 part/models.py:3044 part/models.py:3288 #: part/templates/part/part_base.html:263 -#: templates/InvenTree/settings/settings.html:229 +#: templates/InvenTree/settings/settings.html:230 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1513 templates/js/translated/part.js:1770 +#: templates/js/translated/part.js:1784 templates/js/translated/part.js:2051 msgid "Category" msgstr "" -#: part/models.py:847 +#: part/models.py:848 msgid "Part category" msgstr "" -#: part/models.py:853 +#: part/models.py:854 msgid "Internal Part Number" msgstr "" -#: part/models.py:859 +#: part/models.py:860 msgid "Part revision or version number" msgstr "Parça revizyon veya versiyon numarası" -#: part/models.py:885 +#: part/models.py:886 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:930 part/templates/part/part_base.html:369 +#: part/models.py:931 part/templates/part/part_base.html:383 msgid "Default Supplier" msgstr "Varsayılan Tedarikçi" -#: part/models.py:931 +#: part/models.py:932 msgid "Default supplier part" msgstr "Varsayılan tedarikçi parçası" -#: part/models.py:938 +#: part/models.py:939 msgid "Default Expiry" msgstr "" -#: part/models.py:939 +#: part/models.py:940 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:945 +#: part/models.py:946 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:952 +#: part/models.py:953 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:958 +#: part/models.py:959 msgid "Can this part be built from other parts?" msgstr "Bu parça diğer parçalardan yapılabilir mi?" -#: part/models.py:964 +#: part/models.py:965 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:970 +#: part/models.py:971 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:975 +#: part/models.py:976 msgid "Can this part be purchased from external suppliers?" msgstr "Bu parça dış tedarikçilerden satın alınabilir mi?" -#: part/models.py:980 +#: part/models.py:981 msgid "Can this part be sold to customers?" msgstr "Bu parça müşterilere satılabilir mi?" -#: part/models.py:985 +#: part/models.py:986 msgid "Is this part active?" msgstr "Bu parça aktif mi?" -#: part/models.py:990 +#: part/models.py:991 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:992 +#: part/models.py:993 msgid "Part notes" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "BOM checksum" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:997 +#: part/models.py:998 msgid "BOM checked by" msgstr "" -#: part/models.py:999 +#: part/models.py:1000 msgid "BOM checked date" msgstr "" -#: part/models.py:1003 +#: part/models.py:1004 msgid "Creation User" msgstr "Oluşturan Kullanıcı" -#: part/models.py:1863 +#: part/models.py:1010 part/templates/part/part_base.html:345 +#: stock/templates/stock/item_base.html:445 +#: templates/js/translated/part.js:1901 +msgid "Last Stocktake" +msgstr "" + +#: part/models.py:1869 msgid "Sell multiple" msgstr "" -#: part/models.py:2763 +#: part/models.py:2781 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:2768 +#: part/models.py:2786 templates/js/translated/part.js:806 msgid "Updated" msgstr "" -#: part/models.py:2769 +#: part/models.py:2787 msgid "Timestamp of last pricing update" msgstr "" -#: part/models.py:2786 +#: part/models.py:2804 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:2787 +#: part/models.py:2805 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:2792 +#: part/models.py:2810 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:2793 +#: part/models.py:2811 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:2798 +#: part/models.py:2816 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:2799 +#: part/models.py:2817 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:2804 +#: part/models.py:2822 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:2805 +#: part/models.py:2823 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:2810 +#: part/models.py:2828 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:2811 +#: part/models.py:2829 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:2816 +#: part/models.py:2834 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:2817 +#: part/models.py:2835 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:2822 +#: part/models.py:2840 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:2823 +#: part/models.py:2841 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:2828 +#: part/models.py:2846 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:2829 +#: part/models.py:2847 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:2834 +#: part/models.py:2852 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:2835 +#: part/models.py:2853 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:2840 +#: part/models.py:2858 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:2841 +#: part/models.py:2859 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:2847 +#: part/models.py:2865 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:2853 +#: part/models.py:2871 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:2858 +#: part/models.py:2876 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:2859 +#: part/models.py:2877 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:2864 +#: part/models.py:2882 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:2865 +#: part/models.py:2883 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:2870 +#: part/models.py:2888 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:2871 +#: part/models.py:2889 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:2876 +#: part/models.py:2894 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:2877 +#: part/models.py:2895 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3013 +#: part/models.py:2913 +msgid "Part for stocktake" +msgstr "" + +#: part/models.py:2920 +msgid "Total available stock at time of stocktake" +msgstr "" + +#: part/models.py:2924 part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:63 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:2043 templates/js/translated/part.js:887 +#: templates/js/translated/pricing.js:537 +#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2511 +msgid "Date" +msgstr "" + +#: part/models.py:2925 +msgid "Date stocktake was performed" +msgstr "" + +#: part/models.py:2933 +msgid "Additional notes" +msgstr "" + +#: part/models.py:2941 +msgid "User who performed this stocktake" +msgstr "" + +#: part/models.py:3091 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:3030 +#: part/models.py:3108 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:3050 templates/js/translated/part.js:2116 -#: templates/js/translated/stock.js:1379 +#: part/models.py:3128 templates/js/translated/part.js:2397 +#: templates/js/translated/stock.js:1378 msgid "Test Name" msgstr "Test Adı" -#: part/models.py:3051 +#: part/models.py:3129 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3056 +#: part/models.py:3134 msgid "Test Description" msgstr "Test Açıklaması" -#: part/models.py:3057 +#: part/models.py:3135 msgid "Enter description for this test" msgstr "" -#: part/models.py:3062 templates/js/translated/part.js:2125 +#: part/models.py:3140 templates/js/translated/part.js:2406 #: templates/js/translated/table_filters.js:322 msgid "Required" msgstr "Gerekli" -#: part/models.py:3063 +#: part/models.py:3141 msgid "Is this test required to pass?" msgstr "Testi geçmesi için bu gerekli mi?" -#: part/models.py:3068 templates/js/translated/part.js:2133 +#: part/models.py:3146 templates/js/translated/part.js:2414 msgid "Requires Value" msgstr "" -#: part/models.py:3069 +#: part/models.py:3147 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3074 templates/js/translated/part.js:2140 +#: part/models.py:3152 templates/js/translated/part.js:2421 msgid "Requires Attachment" msgstr "" -#: part/models.py:3075 +#: part/models.py:3153 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3116 +#: part/models.py:3194 msgid "Parameter template name must be unique" msgstr "Parametre şablon adı benzersiz olmalıdır" -#: part/models.py:3124 +#: part/models.py:3202 msgid "Parameter Name" msgstr "" -#: part/models.py:3128 +#: part/models.py:3206 msgid "Parameter Units" msgstr "" -#: part/models.py:3133 +#: part/models.py:3211 msgid "Parameter description" msgstr "" -#: part/models.py:3166 +#: part/models.py:3244 msgid "Parent Part" msgstr "" -#: part/models.py:3168 part/models.py:3216 part/models.py:3217 -#: templates/InvenTree/settings/settings.html:224 +#: part/models.py:3246 part/models.py:3294 part/models.py:3295 +#: templates/InvenTree/settings/settings.html:225 msgid "Parameter Template" msgstr "Parametre Şablonu" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Data" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Parameter Value" msgstr "" -#: part/models.py:3221 templates/InvenTree/settings/settings.html:233 +#: part/models.py:3299 templates/InvenTree/settings/settings.html:234 msgid "Default Value" msgstr "" -#: part/models.py:3222 +#: part/models.py:3300 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3259 +#: part/models.py:3337 msgid "Part ID or part name" msgstr "" -#: part/models.py:3263 +#: part/models.py:3341 msgid "Unique part ID value" msgstr "" -#: part/models.py:3271 +#: part/models.py:3349 msgid "Part IPN value" msgstr "" -#: part/models.py:3274 +#: part/models.py:3352 msgid "Level" msgstr "" -#: part/models.py:3275 +#: part/models.py:3353 msgid "BOM level" msgstr "" -#: part/models.py:3344 +#: part/models.py:3422 msgid "Select parent part" msgstr "" -#: part/models.py:3352 +#: part/models.py:3430 msgid "Sub part" msgstr "" -#: part/models.py:3353 +#: part/models.py:3431 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:3359 +#: part/models.py:3437 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:3363 part/templates/part/upload_bom.html:58 +#: part/models.py:3441 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:933 templates/js/translated/bom.js:986 #: templates/js/translated/build.js:1868 #: templates/js/translated/table_filters.js:84 @@ -5236,189 +5303,189 @@ msgstr "" msgid "Optional" msgstr "" -#: part/models.py:3364 +#: part/models.py:3442 msgid "This BOM item is optional" msgstr "" -#: part/models.py:3369 templates/js/translated/bom.js:929 +#: part/models.py:3447 templates/js/translated/bom.js:929 #: templates/js/translated/bom.js:995 templates/js/translated/build.js:1859 #: templates/js/translated/table_filters.js:88 msgid "Consumable" msgstr "" -#: part/models.py:3370 +#: part/models.py:3448 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:3374 part/templates/part/upload_bom.html:55 +#: part/models.py:3452 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:3375 +#: part/models.py:3453 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:3378 +#: part/models.py:3456 msgid "BOM item reference" msgstr "" -#: part/models.py:3381 +#: part/models.py:3459 msgid "BOM item notes" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "Checksum" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "BOM line checksum" msgstr "" -#: part/models.py:3387 part/templates/part/upload_bom.html:57 +#: part/models.py:3465 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1012 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:108 msgid "Inherited" msgstr "" -#: part/models.py:3388 +#: part/models.py:3466 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:3393 part/templates/part/upload_bom.html:56 +#: part/models.py:3471 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1004 msgid "Allow Variants" msgstr "Çeşide İzin Ver" -#: part/models.py:3394 +#: part/models.py:3472 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:3480 stock/models.py:558 +#: part/models.py:3558 stock/models.py:558 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:3489 part/models.py:3491 +#: part/models.py:3567 part/models.py:3569 msgid "Sub part must be specified" msgstr "" -#: part/models.py:3618 +#: part/models.py:3696 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:3639 +#: part/models.py:3717 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:3652 +#: part/models.py:3730 msgid "Parent BOM item" msgstr "" -#: part/models.py:3660 +#: part/models.py:3738 msgid "Substitute part" msgstr "" -#: part/models.py:3675 +#: part/models.py:3753 msgid "Part 1" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Part 2" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Select Related Part" msgstr "" -#: part/models.py:3697 +#: part/models.py:3775 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:3701 +#: part/models.py:3779 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:155 part/serializers.py:183 stock/serializers.py:183 +#: part/serializers.py:157 part/serializers.py:185 stock/serializers.py:183 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:543 +#: part/serializers.py:584 msgid "Update" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:585 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:854 +#: part/serializers.py:895 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:862 +#: part/serializers.py:903 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:863 +#: part/serializers.py:904 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:868 +#: part/serializers.py:909 msgid "Include Inherited" msgstr "" -#: part/serializers.py:869 +#: part/serializers.py:910 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:874 +#: part/serializers.py:915 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:875 +#: part/serializers.py:916 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:921 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:881 +#: part/serializers.py:922 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:962 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:922 +#: part/serializers.py:963 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:952 +#: part/serializers.py:993 msgid "No part column specified" msgstr "" -#: part/serializers.py:995 +#: part/serializers.py:1036 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:998 +#: part/serializers.py:1039 msgid "No matching part found" msgstr "" -#: part/serializers.py:1001 +#: part/serializers.py:1042 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1010 +#: part/serializers.py:1051 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1059 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1039 +#: part/serializers.py:1080 msgid "At least one BOM item is required" msgstr "" @@ -5450,7 +5517,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:267 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:290 msgid "BOM actions" msgstr "" @@ -5507,8 +5574,8 @@ msgstr "" msgid "New Part" msgstr "" -#: part/templates/part/category.html:169 part/templates/part/detail.html:366 -#: part/templates/part/detail.html:397 +#: part/templates/part/category.html:169 part/templates/part/detail.html:389 +#: part/templates/part/detail.html:420 msgid "Options" msgstr "" @@ -5556,7 +5623,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:404 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:407 msgid "Duplicate Part" msgstr "" @@ -5593,118 +5660,128 @@ msgstr "" msgid "Refresh" msgstr "Yenile" -#: part/templates/part/detail.html:59 +#: part/templates/part/detail.html:65 +msgid "Add stocktake information" +msgstr "" + +#: part/templates/part/detail.html:66 part/templates/part/part_sidebar.html:49 +#: stock/admin.py:107 templates/js/translated/stock.js:1905 +msgid "Stocktake" +msgstr "" + +#: part/templates/part/detail.html:82 msgid "Part Test Templates" msgstr "Parça Test Şablonları" -#: part/templates/part/detail.html:64 +#: part/templates/part/detail.html:87 msgid "Add Test Template" msgstr "Test Şablonu Ekle" -#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:144 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:141 +#: part/templates/part/detail.html:164 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:156 +#: part/templates/part/detail.html:179 msgid "Part Variants" msgstr "Parça Çeşitleri" -#: part/templates/part/detail.html:160 +#: part/templates/part/detail.html:183 msgid "Create new variant" msgstr "Yeni çeşit oluştur" -#: part/templates/part/detail.html:161 +#: part/templates/part/detail.html:184 msgid "New Variant" msgstr "Yeni Çeşit" -#: part/templates/part/detail.html:188 +#: part/templates/part/detail.html:211 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:225 part/templates/part/part_sidebar.html:52 +#: part/templates/part/detail.html:248 part/templates/part/part_sidebar.html:57 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:229 part/templates/part/detail.html:230 +#: part/templates/part/detail.html:252 part/templates/part/detail.html:253 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:250 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:273 part/templates/part/part_sidebar.html:17 +#: report/templates/report/inventree_bill_of_materials_report.html:100 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:255 +#: part/templates/part/detail.html:278 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:259 templates/js/translated/bom.js:309 +#: part/templates/part/detail.html:282 templates/js/translated/bom.js:309 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:261 +#: part/templates/part/detail.html:284 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:271 +#: part/templates/part/detail.html:294 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:272 templates/js/translated/part.js:276 +#: part/templates/part/detail.html:295 templates/js/translated/part.js:279 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:273 +#: part/templates/part/detail.html:296 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:278 part/templates/part/detail.html:279 +#: part/templates/part/detail.html:301 part/templates/part/detail.html:302 #: templates/js/translated/bom.js:1268 templates/js/translated/bom.js:1269 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:292 +#: part/templates/part/detail.html:315 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:310 +#: part/templates/part/detail.html:333 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:337 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:360 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:353 +#: part/templates/part/detail.html:376 msgid "Part Suppliers" msgstr "Parça Tedarikçileri" -#: part/templates/part/detail.html:383 +#: part/templates/part/detail.html:406 msgid "Part Manufacturers" msgstr "" -#: part/templates/part/detail.html:399 +#: part/templates/part/detail.html:422 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:696 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:704 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:796 msgid "Add Test Result Template" msgstr "" #: part/templates/part/import_wizard/ajax_part_upload.html:29 #: part/templates/part/import_wizard/part_upload.html:14 -msgid "Unsuffitient privileges." +msgid "Insufficient privileges." msgstr "" #: part/templates/part/import_wizard/part_upload.html:8 @@ -5715,6 +5792,34 @@ msgstr "" msgid "Import Parts from File" msgstr "" +#: part/templates/part/import_wizard/part_upload.html:31 +msgid "Requirements for part import" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "The part import file must contain the required named columns as provided in the " +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:89 +msgid "Download Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:92 +#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 +#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 +msgid "Format" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:93 +#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 +#: templates/js/translated/order.js:999 +msgid "Select file format" +msgstr "" + #: part/templates/part/part_app_base.html:12 msgid "Part List" msgstr "" @@ -5804,12 +5909,12 @@ msgstr "" #: templates/js/translated/company.js:660 #: templates/js/translated/company.js:921 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:677 templates/js/translated/part.js:755 +#: templates/js/translated/part.js:680 templates/js/translated/part.js:1026 msgid "Inactive" msgstr "Pasif" #: part/templates/part/part_base.html:165 -#: part/templates/part/part_base.html:666 +#: part/templates/part/part_base.html:680 msgid "Show Part Details" msgstr "" @@ -5837,38 +5942,38 @@ msgid "Minimum stock level" msgstr "" #: part/templates/part/part_base.html:330 templates/js/translated/bom.js:1032 -#: templates/js/translated/part.js:798 templates/js/translated/part.js:1604 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:1875 #: templates/js/translated/pricing.js:124 #: templates/js/translated/pricing.js:762 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:345 +#: part/templates/part/part_base.html:359 msgid "Latest Serial Number" msgstr "Son Seri Numarası" -#: part/templates/part/part_base.html:349 +#: part/templates/part/part_base.html:363 #: stock/templates/stock/item_base.html:331 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:449 +#: part/templates/part/part_base.html:463 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:495 +#: part/templates/part/part_base.html:509 msgid "Calculate" msgstr "Hesapla" -#: part/templates/part/part_base.html:512 +#: part/templates/part/part_base.html:526 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:564 +#: part/templates/part/part_base.html:578 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:660 +#: part/templates/part/part_base.html:674 msgid "Hide Part Details" msgstr "" @@ -5920,15 +6025,6 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" -#: part/templates/part/part_scheduling.html:13 -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:63 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:2043 templates/js/translated/pricing.js:537 -#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2516 -msgid "Date" -msgstr "" - #: part/templates/part/part_scheduling.html:14 msgid "Scheduled Quantity" msgstr "" @@ -5941,7 +6037,7 @@ msgstr "" msgid "Scheduling" msgstr "" -#: part/templates/part/part_sidebar.html:48 +#: part/templates/part/part_sidebar.html:53 msgid "Test Templates" msgstr "" @@ -5960,7 +6056,7 @@ msgstr "" #: part/templates/part/prices.html:25 stock/admin.py:106 #: stock/templates/stock/item_base.html:440 #: templates/js/translated/company.js:1039 -#: templates/js/translated/stock.js:1940 +#: templates/js/translated/stock.js:1935 msgid "Last Updated" msgstr "" @@ -6023,8 +6119,8 @@ msgstr "" msgid "Add Sell Price Break" msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:639 -#: templates/js/translated/part.js:1373 templates/js/translated/part.js:1375 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:1644 templates/js/translated/part.js:1646 msgid "No Stock" msgstr "Stok Yok" @@ -6087,27 +6183,32 @@ msgstr "" msgid "{title} v{version}" msgstr "" -#: part/views.py:109 +#: part/views.py:111 msgid "Match References" msgstr "" -#: part/views.py:354 +#: part/views.py:239 +#, python-brace-format +msgid "Can't import part {name} because there is no category assigned" +msgstr "" + +#: part/views.py:378 msgid "Part QR Code" msgstr "" -#: part/views.py:372 +#: part/views.py:396 msgid "Select Part Image" msgstr "" -#: part/views.py:398 +#: part/views.py:422 msgid "Updated part image" msgstr "" -#: part/views.py:401 +#: part/views.py:425 msgid "Part image not found" msgstr "" -#: part/views.py:493 +#: part/views.py:517 msgid "Part Pricing" msgstr "" @@ -6156,28 +6257,48 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:29 -#: plugin/builtin/integration/core_notifications.py:31 +#: plugin/builtin/integration/core_notifications.py:33 msgid "InvenTree contributors" msgstr "" -#: plugin/builtin/integration/core_notifications.py:30 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:32 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notificaton methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:37 -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:80 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:38 -#: plugin/builtin/integration/core_notifications.py:57 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:81 msgid "Allow sending of emails for event notifications" msgstr "" +#: plugin/builtin/integration/core_notifications.py:45 +msgid "Enable slack notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:46 +msgid "Allow sending of slack channel messages for event notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:51 +msgid "Slack incoming webhook url" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:52 +msgid "URL that is used to send messages to a slack channel" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:162 +msgid "Open link" +msgstr "" + #: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" @@ -6409,6 +6530,10 @@ msgstr "" msgid "Asset file description" msgstr "" +#: report/templates/report/inventree_bill_of_materials_report.html:133 +msgid "Materials needed" +msgstr "" + #: report/templates/report/inventree_build_order_base.html:146 msgid "Required For" msgstr "İçin Gerekli Olan" @@ -6427,7 +6552,7 @@ msgstr "" #: templates/js/translated/build.js:1244 templates/js/translated/build.js:1745 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:121 templates/js/translated/order.js:3611 -#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:522 +#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:521 msgid "Serial Number" msgstr "Seri Numara" @@ -6459,8 +6584,9 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: stock/admin.py:87 templates/js/translated/stock.js:642 -#: templates/js/translated/stock.js:812 templates/js/translated/stock.js:2765 +#: stock/admin.py:87 templates/js/translated/part.js:749 +#: templates/js/translated/stock.js:641 templates/js/translated/stock.js:811 +#: templates/js/translated/stock.js:2760 msgid "Serial" msgstr "Seri No" @@ -6515,13 +6641,9 @@ msgstr "" msgid "Purchase Order ID" msgstr "" -#: stock/admin.py:107 templates/js/translated/stock.js:1910 -msgid "Stocktake" -msgstr "" - #: stock/admin.py:108 stock/models.py:764 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/stock.js:1924 +#: templates/js/translated/stock.js:1919 msgid "Expiry Date" msgstr "" @@ -6936,7 +7058,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2912 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2907 msgid "Install Stock Item" msgstr "" @@ -6944,7 +7066,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1561 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1560 msgid "Add Test Result" msgstr "" @@ -7117,10 +7239,6 @@ msgstr "Bu stok kaleminin süresi %(item.expiry_date)s tarihinde sona erecek" msgid "Stale" msgstr "" -#: stock/templates/stock/item_base.html:445 -msgid "Last Stocktake" -msgstr "" - #: stock/templates/stock/item_base.html:449 msgid "No stocktake performed" msgstr "" @@ -7394,7 +7512,8 @@ msgstr "" #: templates/InvenTree/notifications/notifications.html:10 #: templates/InvenTree/notifications/sidebar.html:5 -#: templates/InvenTree/settings/sidebar.html:17 templates/notifications.html:5 +#: templates/InvenTree/settings/sidebar.html:17 +#: templates/InvenTree/settings/sidebar.html:35 templates/notifications.html:5 msgid "Notifications" msgstr "" @@ -7475,6 +7594,14 @@ msgstr "" msgid "Open in new tab" msgstr "" +#: templates/InvenTree/settings/notifications.html:9 +msgid "Global Notification Settings" +msgstr "" + +#: templates/InvenTree/settings/notifications.html:18 +msgid "Slug" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -7492,7 +7619,7 @@ msgid "Part Parameter Templates" msgstr "Parça Parametre Şablonu" #: templates/InvenTree/settings/plugin.html:10 -#: templates/InvenTree/settings/sidebar.html:55 +#: templates/InvenTree/settings/sidebar.html:57 msgid "Plugin Settings" msgstr "" @@ -7501,7 +7628,7 @@ msgid "Changing the settings below require you to immediately restart the server msgstr "" #: templates/InvenTree/settings/plugin.html:38 -#: templates/InvenTree/settings/sidebar.html:57 +#: templates/InvenTree/settings/sidebar.html:59 msgid "Plugins" msgstr "" @@ -7669,67 +7796,67 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:117 +#: templates/InvenTree/settings/settings.html:118 msgid "Edit Plugin Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:119 +#: templates/InvenTree/settings/settings.html:120 msgid "Edit Notification Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:122 +#: templates/InvenTree/settings/settings.html:123 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:124 +#: templates/InvenTree/settings/settings.html:125 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:214 +#: templates/InvenTree/settings/settings.html:215 msgid "No category parameter templates found" msgstr "Kategori parametre şablonu bulunamadı" -#: templates/InvenTree/settings/settings.html:236 -#: templates/InvenTree/settings/settings.html:361 +#: templates/InvenTree/settings/settings.html:237 +#: templates/InvenTree/settings/settings.html:362 msgid "Edit Template" msgstr "Şablonu Düzenle" -#: templates/InvenTree/settings/settings.html:237 -#: templates/InvenTree/settings/settings.html:362 +#: templates/InvenTree/settings/settings.html:238 +#: templates/InvenTree/settings/settings.html:363 msgid "Delete Template" msgstr "Şablonu Sil" -#: templates/InvenTree/settings/settings.html:277 +#: templates/InvenTree/settings/settings.html:278 msgid "Create Category Parameter Template" msgstr "Kategori Parametre Şablonu Oluştur" -#: templates/InvenTree/settings/settings.html:322 +#: templates/InvenTree/settings/settings.html:323 msgid "Delete Category Parameter Template" msgstr "Kategori Parametre Şablonu Sil" -#: templates/InvenTree/settings/settings.html:334 +#: templates/InvenTree/settings/settings.html:335 msgid "No part parameter templates found" msgstr "Parça parametre şablonu bulunamadı" -#: templates/InvenTree/settings/settings.html:338 +#: templates/InvenTree/settings/settings.html:339 #: templates/js/translated/news.js:29 #: templates/js/translated/notification.js:36 msgid "ID" msgstr "" -#: templates/InvenTree/settings/settings.html:380 +#: templates/InvenTree/settings/settings.html:381 msgid "Create Part Parameter Template" msgstr "Parça Parametre Şablonu Oluştur" -#: templates/InvenTree/settings/settings.html:399 +#: templates/InvenTree/settings/settings.html:400 msgid "Edit Part Parameter Template" msgstr "Parça Parametre Şablonu Düzenle" -#: templates/InvenTree/settings/settings.html:413 +#: templates/InvenTree/settings/settings.html:414 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/InvenTree/settings/settings.html:421 +#: templates/InvenTree/settings/settings.html:422 msgid "Delete Part Parameter Template" msgstr "Parça Parametre Şablonu Sil" @@ -7758,12 +7885,12 @@ msgid "Search Settings" msgstr "Arama Ayarları" #: templates/InvenTree/settings/sidebar.html:19 -#: templates/InvenTree/settings/sidebar.html:37 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Label Printing" msgstr "" #: templates/InvenTree/settings/sidebar.html:21 -#: templates/InvenTree/settings/sidebar.html:39 +#: templates/InvenTree/settings/sidebar.html:41 msgid "Reporting" msgstr "" @@ -7775,7 +7902,7 @@ msgstr "" msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:43 +#: templates/InvenTree/settings/sidebar.html:45 msgid "Categories" msgstr "" @@ -7945,64 +8072,64 @@ msgstr "" msgid "Do you really want to remove the selected email address?" msgstr "" -#: templates/InvenTree/settings/user_display.html:28 +#: templates/InvenTree/settings/user_display.html:29 msgid "Theme Settings" msgstr "Tema Ayarları" -#: templates/InvenTree/settings/user_display.html:38 +#: templates/InvenTree/settings/user_display.html:39 msgid "Select theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:49 +#: templates/InvenTree/settings/user_display.html:50 msgid "Set Theme" msgstr "Tema Seç" -#: templates/InvenTree/settings/user_display.html:57 +#: templates/InvenTree/settings/user_display.html:58 msgid "Language Settings" msgstr "Dil Ayarları" -#: templates/InvenTree/settings/user_display.html:66 +#: templates/InvenTree/settings/user_display.html:67 msgid "Select language" msgstr "" -#: templates/InvenTree/settings/user_display.html:82 +#: templates/InvenTree/settings/user_display.html:83 #, python-format msgid "%(lang_translated)s%% translated" msgstr "" -#: templates/InvenTree/settings/user_display.html:84 +#: templates/InvenTree/settings/user_display.html:85 msgid "No translations available" msgstr "" -#: templates/InvenTree/settings/user_display.html:91 +#: templates/InvenTree/settings/user_display.html:92 msgid "Set Language" msgstr "Dili Ayarla" -#: templates/InvenTree/settings/user_display.html:94 +#: templates/InvenTree/settings/user_display.html:95 msgid "Some languages are not complete" msgstr "" -#: templates/InvenTree/settings/user_display.html:96 +#: templates/InvenTree/settings/user_display.html:97 msgid "Show only sufficent" msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "and hidden." msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "Show them too" msgstr "" -#: templates/InvenTree/settings/user_display.html:105 +#: templates/InvenTree/settings/user_display.html:106 msgid "Help the translation efforts!" msgstr "" -#: templates/InvenTree/settings/user_display.html:106 +#: templates/InvenTree/settings/user_display.html:107 msgid "Native language translation of the web application is community contributed via crowdin. Contributions are welcomed and encouraged." msgstr "" -#: templates/InvenTree/settings/user_display.html:107 +#: templates/InvenTree/settings/user_display.html:108 msgid "InvenTree Translation Project" msgstr "" @@ -8080,7 +8207,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:646 +#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:649 msgid "Confirm" msgstr "Onay" @@ -8313,7 +8440,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 -#: templates/js/translated/part.js:2445 +#: templates/js/translated/part.js:2726 msgid "Minimum Quantity" msgstr "" @@ -8466,7 +8593,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1089 +#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1088 msgid "Remove stock item" msgstr "" @@ -8548,16 +8675,6 @@ msgstr "Kapat" msgid "Download BOM Template" msgstr "" -#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 -#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 -msgid "Format" -msgstr "" - -#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 -#: templates/js/translated/order.js:999 -msgid "Select file format" -msgstr "" - #: templates/js/translated/bom.js:320 msgid "Multi Level BOM" msgstr "" @@ -8688,7 +8805,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:1145 templates/js/translated/build.js:1923 -#: templates/js/translated/part.js:790 templates/js/translated/part.js:1572 +#: templates/js/translated/part.js:1061 templates/js/translated/part.js:1843 msgid "Includes variant stock" msgstr "" @@ -8773,13 +8890,13 @@ msgstr "Yapım işi emri eksik" msgid "Complete Build Order" msgstr "Tamamlanmış Yapım İşi Emri" -#: templates/js/translated/build.js:317 templates/js/translated/stock.js:95 -#: templates/js/translated/stock.js:237 +#: templates/js/translated/build.js:317 templates/js/translated/stock.js:94 +#: templates/js/translated/stock.js:236 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:319 templates/js/translated/stock.js:97 -#: templates/js/translated/stock.js:239 +#: templates/js/translated/build.js:319 templates/js/translated/stock.js:96 +#: templates/js/translated/stock.js:238 msgid "Latest serial number" msgstr "" @@ -8987,9 +9104,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1466 -#: templates/js/translated/part.js:2003 templates/js/translated/stock.js:1725 -#: templates/js/translated/stock.js:2428 +#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1737 +#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1724 +#: templates/js/translated/stock.js:2423 msgid "Select" msgstr "" @@ -9001,7 +9118,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2695 +#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2690 msgid "No user information" msgstr "" @@ -9074,34 +9191,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:652 -#: templates/js/translated/company.js:913 templates/js/translated/part.js:661 -#: templates/js/translated/part.js:747 +#: templates/js/translated/company.js:913 templates/js/translated/part.js:664 +#: templates/js/translated/part.js:1018 msgid "Template part" msgstr "Şablon Parça" #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:917 templates/js/translated/part.js:665 -#: templates/js/translated/part.js:751 +#: templates/js/translated/company.js:917 templates/js/translated/part.js:668 +#: templates/js/translated/part.js:1022 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:784 templates/js/translated/part.js:870 +#: templates/js/translated/company.js:784 templates/js/translated/part.js:1141 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:821 templates/js/translated/part.js:912 +#: templates/js/translated/company.js:821 templates/js/translated/part.js:1183 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:822 templates/js/translated/part.js:913 +#: templates/js/translated/company.js:822 templates/js/translated/part.js:1184 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:841 templates/js/translated/part.js:930 +#: templates/js/translated/company.js:841 templates/js/translated/part.js:1201 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:852 templates/js/translated/part.js:942 +#: templates/js/translated/company.js:852 templates/js/translated/part.js:1213 msgid "Delete Parameter" msgstr "" @@ -9181,61 +9298,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:369 templates/js/translated/forms.js:384 -#: templates/js/translated/forms.js:398 templates/js/translated/forms.js:412 +#: templates/js/translated/forms.js:372 templates/js/translated/forms.js:387 +#: templates/js/translated/forms.js:401 templates/js/translated/forms.js:415 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:371 +#: templates/js/translated/forms.js:374 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:386 +#: templates/js/translated/forms.js:389 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:400 +#: templates/js/translated/forms.js:403 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:414 +#: templates/js/translated/forms.js:417 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:672 +#: templates/js/translated/forms.js:675 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:773 +#: templates/js/translated/forms.js:776 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1266 templates/modals.html:19 +#: templates/js/translated/forms.js:1269 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1703 +#: templates/js/translated/forms.js:1706 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1919 templates/search.html:29 +#: templates/js/translated/forms.js:1922 templates/search.html:29 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2172 +#: templates/js/translated/forms.js:2175 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:2640 +#: templates/js/translated/forms.js:2643 msgid "Select Columns" msgstr "" @@ -9256,7 +9373,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1113 +#: templates/js/translated/stock.js:1112 msgid "Select Stock Items" msgstr "" @@ -9590,7 +9707,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2184 +#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2179 msgid "Stock Status" msgstr "" @@ -9614,7 +9731,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1982 templates/js/translated/part.js:983 +#: templates/js/translated/order.js:1982 templates/js/translated/part.js:1254 msgid "No purchase orders found" msgstr "" @@ -9647,8 +9764,8 @@ msgstr "" msgid "Total" msgstr "" -#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1085 -#: templates/js/translated/part.js:1137 +#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1356 +#: templates/js/translated/part.js:1408 msgid "Total Quantity" msgstr "" @@ -9666,11 +9783,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2388 templates/js/translated/order.js:3900 -#: templates/js/translated/part.js:1121 +#: templates/js/translated/part.js:1392 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1166 +#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1437 msgid "Receive line item" msgstr "" @@ -9791,7 +9908,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3623 templates/js/translated/order.js:3712 -#: templates/js/translated/stock.js:1641 +#: templates/js/translated/stock.js:1640 msgid "Shipped to customer" msgstr "" @@ -9835,334 +9952,358 @@ msgstr "" msgid "No matching lines" msgstr "" -#: templates/js/translated/part.js:52 +#: templates/js/translated/part.js:55 msgid "Part Attributes" msgstr "" -#: templates/js/translated/part.js:56 +#: templates/js/translated/part.js:59 msgid "Part Creation Options" msgstr "" -#: templates/js/translated/part.js:60 +#: templates/js/translated/part.js:63 msgid "Part Duplication Options" msgstr "" -#: templates/js/translated/part.js:64 +#: templates/js/translated/part.js:67 msgid "Supplier Options" msgstr "" -#: templates/js/translated/part.js:78 +#: templates/js/translated/part.js:81 msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:168 +#: templates/js/translated/part.js:171 msgid "Create Initial Stock" msgstr "" -#: templates/js/translated/part.js:169 +#: templates/js/translated/part.js:172 msgid "Create an initial stock item for this part" msgstr "" -#: templates/js/translated/part.js:176 +#: templates/js/translated/part.js:179 msgid "Initial Stock Quantity" msgstr "" -#: templates/js/translated/part.js:177 +#: templates/js/translated/part.js:180 msgid "Specify initial stock quantity for this part" msgstr "" -#: templates/js/translated/part.js:184 +#: templates/js/translated/part.js:187 msgid "Select destination stock location" msgstr "" -#: templates/js/translated/part.js:202 +#: templates/js/translated/part.js:205 msgid "Copy Category Parameters" msgstr "" -#: templates/js/translated/part.js:203 +#: templates/js/translated/part.js:206 msgid "Copy parameter templates from selected part category" msgstr "" -#: templates/js/translated/part.js:211 +#: templates/js/translated/part.js:214 msgid "Add Supplier Data" msgstr "" -#: templates/js/translated/part.js:212 +#: templates/js/translated/part.js:215 msgid "Create initial supplier data for this part" msgstr "" -#: templates/js/translated/part.js:268 +#: templates/js/translated/part.js:271 msgid "Copy Image" msgstr "" -#: templates/js/translated/part.js:269 +#: templates/js/translated/part.js:272 msgid "Copy image from original part" msgstr "" -#: templates/js/translated/part.js:277 +#: templates/js/translated/part.js:280 msgid "Copy bill of materials from original part" msgstr "" -#: templates/js/translated/part.js:284 +#: templates/js/translated/part.js:287 msgid "Copy Parameters" msgstr "" -#: templates/js/translated/part.js:285 +#: templates/js/translated/part.js:288 msgid "Copy parameter data from original part" msgstr "" -#: templates/js/translated/part.js:298 +#: templates/js/translated/part.js:301 msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:313 templates/js/translated/stock.js:122 +#: templates/js/translated/part.js:316 templates/js/translated/stock.js:121 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:329 +#: templates/js/translated/part.js:332 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:342 +#: templates/js/translated/part.js:345 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:347 +#: templates/js/translated/part.js:350 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:359 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:360 +#: templates/js/translated/part.js:363 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:368 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:394 +#: templates/js/translated/part.js:397 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:396 +#: templates/js/translated/part.js:399 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:407 +#: templates/js/translated/part.js:410 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:459 +#: templates/js/translated/part.js:462 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:460 +#: templates/js/translated/part.js:463 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:477 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:476 +#: templates/js/translated/part.js:479 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:477 +#: templates/js/translated/part.js:480 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:478 +#: templates/js/translated/part.js:481 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:485 +#: templates/js/translated/part.js:488 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:521 +#: templates/js/translated/part.js:524 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:523 +#: templates/js/translated/part.js:526 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:531 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:530 +#: templates/js/translated/part.js:533 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:547 +#: templates/js/translated/part.js:550 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:560 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:560 +#: templates/js/translated/part.js:563 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:585 +#: templates/js/translated/part.js:588 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1554 +#: templates/js/translated/part.js:612 templates/js/translated/part.js:1825 #: templates/js/translated/table_filters.js:488 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:622 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:653 templates/js/translated/part.js:739 +#: templates/js/translated/part.js:656 templates/js/translated/part.js:1010 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:657 templates/js/translated/part.js:743 +#: templates/js/translated/part.js:660 templates/js/translated/part.js:1014 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:669 +#: templates/js/translated/part.js:672 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:673 +#: templates/js/translated/part.js:676 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:815 +#: templates/js/translated/part.js:761 +msgid "Stock item has not been checked recently" +msgstr "" + +#: templates/js/translated/part.js:769 +msgid "Update item" +msgstr "" + +#: templates/js/translated/part.js:770 +msgid "Delete item" +msgstr "" + +#: templates/js/translated/part.js:871 +msgid "No stocktake information available" +msgstr "" + +#: templates/js/translated/part.js:910 templates/js/translated/part.js:933 +msgid "Edit Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:914 templates/js/translated/part.js:945 +msgid "Delete Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:1086 msgid "No variants found" msgstr "Çeşit bulunamadı" -#: templates/js/translated/part.js:1236 +#: templates/js/translated/part.js:1507 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1260 +#: templates/js/translated/part.js:1531 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1327 templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1598 templates/js/translated/part.js:1936 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1521 +#: templates/js/translated/part.js:1792 msgid "No category" msgstr "Katagori Yok" -#: templates/js/translated/part.js:1552 +#: templates/js/translated/part.js:1823 msgid "No stock" msgstr "" -#: templates/js/translated/part.js:1576 +#: templates/js/translated/part.js:1847 msgid "Allocated to build orders" msgstr "" -#: templates/js/translated/part.js:1580 +#: templates/js/translated/part.js:1851 msgid "Allocated to sales orders" msgstr "" -#: templates/js/translated/part.js:1679 templates/js/translated/part.js:1922 -#: templates/js/translated/stock.js:2387 +#: templates/js/translated/part.js:1960 templates/js/translated/part.js:2203 +#: templates/js/translated/stock.js:2382 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1695 +#: templates/js/translated/part.js:1976 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1761 +#: templates/js/translated/part.js:2042 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1766 +#: templates/js/translated/part.js:2047 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1771 +#: templates/js/translated/part.js:2052 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1784 +#: templates/js/translated/part.js:2065 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1942 templates/js/translated/stock.js:2407 +#: templates/js/translated/part.js:2223 templates/js/translated/stock.js:2402 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2022 +#: templates/js/translated/part.js:2303 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2038 +#: templates/js/translated/part.js:2319 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2383 msgid "No test templates matching query" msgstr "Sorgu ile eşleşen test şablonu bulunamadı" -#: templates/js/translated/part.js:2153 templates/js/translated/stock.js:1338 +#: templates/js/translated/part.js:2434 templates/js/translated/stock.js:1337 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2154 templates/js/translated/stock.js:1339 -#: templates/js/translated/stock.js:1599 +#: templates/js/translated/part.js:2435 templates/js/translated/stock.js:1338 +#: templates/js/translated/stock.js:1598 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2441 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2182 +#: templates/js/translated/part.js:2463 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2196 +#: templates/js/translated/part.js:2477 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2277 templates/js/translated/part.js:2278 +#: templates/js/translated/part.js:2558 templates/js/translated/part.js:2559 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2280 +#: templates/js/translated/part.js:2561 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:2286 +#: templates/js/translated/part.js:2567 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:2336 +#: templates/js/translated/part.js:2617 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2623 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:2438 +#: templates/js/translated/part.js:2719 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2454 +#: templates/js/translated/part.js:2735 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:2499 +#: templates/js/translated/part.js:2780 msgid "Minimum Stock Level" msgstr "" @@ -10290,388 +10431,388 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:74 +#: templates/js/translated/stock.js:73 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:104 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:114 +#: templates/js/translated/stock.js:113 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:148 +#: templates/js/translated/stock.js:147 msgid "Edit Stock Location" msgstr "Stok konumunu düzenle" -#: templates/js/translated/stock.js:163 +#: templates/js/translated/stock.js:162 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:177 +#: templates/js/translated/stock.js:176 msgid "Are you sure you want to delete this stock location?" msgstr "Bu stok konumunu silmek istediğinizden emin misiniz?" -#: templates/js/translated/stock.js:184 +#: templates/js/translated/stock.js:183 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:193 +#: templates/js/translated/stock.js:192 msgid "Delete Stock Location" msgstr "Stok Konumunu Sil" -#: templates/js/translated/stock.js:197 +#: templates/js/translated/stock.js:196 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:201 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:256 +#: templates/js/translated/stock.js:255 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:298 +#: templates/js/translated/stock.js:297 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:304 +#: templates/js/translated/stock.js:303 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:368 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:389 +#: templates/js/translated/stock.js:388 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:405 +#: templates/js/translated/stock.js:404 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:410 +#: templates/js/translated/stock.js:409 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:431 +#: templates/js/translated/stock.js:430 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:481 +#: templates/js/translated/stock.js:480 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:494 +#: templates/js/translated/stock.js:493 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:519 +#: templates/js/translated/stock.js:518 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:523 templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:522 templates/js/translated/stock.js:523 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:540 +#: templates/js/translated/stock.js:539 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:560 +#: templates/js/translated/stock.js:559 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:568 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:692 +#: templates/js/translated/stock.js:691 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:693 +#: templates/js/translated/stock.js:692 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:770 +#: templates/js/translated/stock.js:769 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:771 +#: templates/js/translated/stock.js:770 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:773 +#: templates/js/translated/stock.js:772 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:774 +#: templates/js/translated/stock.js:773 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:863 +#: templates/js/translated/stock.js:862 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:864 +#: templates/js/translated/stock.js:863 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:958 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:959 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:966 +#: templates/js/translated/stock.js:965 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:967 +#: templates/js/translated/stock.js:966 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:971 +#: templates/js/translated/stock.js:970 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:972 +#: templates/js/translated/stock.js:971 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:976 +#: templates/js/translated/stock.js:975 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:977 users/models.py:220 +#: templates/js/translated/stock.js:976 users/models.py:221 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:981 +#: templates/js/translated/stock.js:980 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1114 +#: templates/js/translated/stock.js:1113 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1141 +#: templates/js/translated/stock.js:1140 msgid "Confirm stock adjustment" msgstr "Stok ayarlamasını onayla" -#: templates/js/translated/stock.js:1277 +#: templates/js/translated/stock.js:1276 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1279 +#: templates/js/translated/stock.js:1278 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1284 +#: templates/js/translated/stock.js:1283 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1331 +#: templates/js/translated/stock.js:1330 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1334 +#: templates/js/translated/stock.js:1333 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1360 +#: templates/js/translated/stock.js:1359 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1417 +#: templates/js/translated/stock.js:1416 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1582 +#: templates/js/translated/stock.js:1581 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1604 +#: templates/js/translated/stock.js:1603 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1633 +#: templates/js/translated/stock.js:1632 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1637 +#: templates/js/translated/stock.js:1636 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1645 +#: templates/js/translated/stock.js:1644 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1651 +#: templates/js/translated/stock.js:1650 msgid "No stock location set" msgstr "Stok konumu ayarlanmadı" -#: templates/js/translated/stock.js:1820 +#: templates/js/translated/stock.js:1815 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1825 +#: templates/js/translated/stock.js:1820 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1828 +#: templates/js/translated/stock.js:1823 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1831 +#: templates/js/translated/stock.js:1826 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1833 +#: templates/js/translated/stock.js:1828 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1835 +#: templates/js/translated/stock.js:1830 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1838 +#: templates/js/translated/stock.js:1833 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1837 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1844 +#: templates/js/translated/stock.js:1839 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1846 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1853 +#: templates/js/translated/stock.js:1848 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1855 +#: templates/js/translated/stock.js:1850 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1859 +#: templates/js/translated/stock.js:1854 #: templates/js/translated/table_filters.js:216 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1989 +#: templates/js/translated/stock.js:1984 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2026 +#: templates/js/translated/stock.js:2021 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2199 +#: templates/js/translated/stock.js:2194 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2213 +#: templates/js/translated/stock.js:2208 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2214 +#: templates/js/translated/stock.js:2209 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2446 +#: templates/js/translated/stock.js:2441 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2536 msgid "Details" msgstr "Detaylar" -#: templates/js/translated/stock.js:2557 +#: templates/js/translated/stock.js:2552 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2579 +#: templates/js/translated/stock.js:2574 msgid "Location no longer exists" msgstr "Konum artık yok" -#: templates/js/translated/stock.js:2598 +#: templates/js/translated/stock.js:2593 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2617 +#: templates/js/translated/stock.js:2612 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2635 +#: templates/js/translated/stock.js:2630 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2658 +#: templates/js/translated/stock.js:2653 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2666 +#: templates/js/translated/stock.js:2661 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2737 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2793 templates/js/translated/stock.js:2829 +#: templates/js/translated/stock.js:2788 templates/js/translated/stock.js:2824 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2845 +#: templates/js/translated/stock.js:2840 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2866 +#: templates/js/translated/stock.js:2861 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2867 +#: templates/js/translated/stock.js:2862 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2869 +#: templates/js/translated/stock.js:2864 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2870 +#: templates/js/translated/stock.js:2865 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:2866 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2872 +#: templates/js/translated/stock.js:2867 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2885 +#: templates/js/translated/stock.js:2880 msgid "Select part to install" msgstr "" @@ -10696,7 +10837,7 @@ msgid "Allow Variant Stock" msgstr "Çeşit Stokuna İzin Ver" #: templates/js/translated/table_filters.js:92 -#: templates/js/translated/table_filters.js:516 +#: templates/js/translated/table_filters.js:520 msgid "Has Pricing" msgstr "" @@ -10912,6 +11053,10 @@ msgstr "" msgid "Purchasable" msgstr "" +#: templates/js/translated/table_filters.js:504 +msgid "Has stocktake entries" +msgstr "" + #: templates/js/translated/tables.js:70 msgid "Display calendar view" msgstr "Takvim görünümünü görüntüle" @@ -11206,35 +11351,35 @@ msgstr "Yetkiler" msgid "Important dates" msgstr "Önemli tarihler" -#: users/models.py:207 +#: users/models.py:208 msgid "Permission set" msgstr "İzinleri ayarla" -#: users/models.py:215 +#: users/models.py:216 msgid "Group" msgstr "Grup" -#: users/models.py:218 +#: users/models.py:219 msgid "View" msgstr "Görünüm" -#: users/models.py:218 +#: users/models.py:219 msgid "Permission to view items" msgstr "Parçayı görüntüleme izni" -#: users/models.py:220 +#: users/models.py:221 msgid "Permission to add items" msgstr "Parça ekleme izni" -#: users/models.py:222 +#: users/models.py:223 msgid "Change" msgstr "Değiştir" -#: users/models.py:222 +#: users/models.py:223 msgid "Permissions to edit items" msgstr "Parçaları düzenleme izni" -#: users/models.py:224 +#: users/models.py:225 msgid "Permission to delete items" msgstr "Parçaları silme izni" diff --git a/InvenTree/locale/vi/LC_MESSAGES/django.po b/InvenTree/locale/vi/LC_MESSAGES/django.po index 75be7a6207..564713b922 100644 --- a/InvenTree/locale/vi/LC_MESSAGES/django.po +++ b/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: 2022-12-30 20:46+0000\n" -"PO-Revision-Date: 2022-12-31 11:30\n" +"POT-Creation-Date: 2023-01-01 11:05+0000\n" +"PO-Revision-Date: 2023-01-01 11:26\n" "Last-Translator: \n" "Language-Team: Vietnamese\n" "Language: vi_VN\n" @@ -34,7 +34,7 @@ msgstr "" #: company/templates/company/sidebar.html:25 order/models.py:943 #: order/templates/order/po_sidebar.html:11 #: order/templates/order/so_sidebar.html:17 part/admin.py:27 -#: part/templates/part/part_sidebar.html:57 +#: part/models.py:2932 part/templates/part/part_sidebar.html:62 #: report/templates/report/inventree_build_order_base.html:172 #: stock/admin.py:103 stock/models.py:2061 stock/models.py:2169 #: stock/serializers.py:321 stock/serializers.py:454 stock/serializers.py:535 @@ -44,8 +44,8 @@ msgstr "" #: templates/js/translated/company.js:1023 #: templates/js/translated/order.js:2435 templates/js/translated/order.js:2569 #: templates/js/translated/order.js:3067 templates/js/translated/order.js:4004 -#: templates/js/translated/order.js:4385 templates/js/translated/stock.js:1413 -#: templates/js/translated/stock.js:2020 +#: templates/js/translated/order.js:4385 templates/js/translated/part.js:882 +#: templates/js/translated/stock.js:1412 templates/js/translated/stock.js:2015 msgid "Notes" msgstr "" @@ -204,18 +204,18 @@ msgstr "" msgid "Select file to attach" msgstr "" -#: InvenTree/models.py:412 common/models.py:2366 company/models.py:129 +#: InvenTree/models.py:412 common/models.py:2373 company/models.py:129 #: company/models.py:281 company/models.py:516 order/models.py:85 -#: order/models.py:1282 part/admin.py:25 part/models.py:865 +#: order/models.py:1282 part/admin.py:25 part/models.py:866 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: stock/admin.py:102 templates/js/translated/company.js:692 #: templates/js/translated/company.js:1012 -#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1615 +#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1886 msgid "Link" msgstr "" -#: InvenTree/models.py:413 build/models.py:290 part/models.py:866 +#: InvenTree/models.py:413 build/models.py:290 part/models.py:867 #: stock/models.py:716 msgid "Link to external URL" msgstr "" @@ -229,12 +229,13 @@ msgstr "Bình luận" msgid "File comment" msgstr "" -#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1810 -#: common/models.py:1811 common/models.py:2034 common/models.py:2035 -#: common/models.py:2296 common/models.py:2297 part/models.py:2948 -#: part/models.py:2968 plugin/models.py:264 plugin/models.py:265 +#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1817 +#: common/models.py:1818 common/models.py:2041 common/models.py:2042 +#: common/models.py:2303 common/models.py:2304 part/models.py:2940 +#: part/models.py:3026 part/models.py:3046 plugin/models.py:264 +#: plugin/models.py:265 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2689 +#: templates/js/translated/stock.js:2684 msgid "User" msgstr "Người dùng" @@ -271,19 +272,20 @@ msgstr "" msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2020 -#: company/models.py:363 label/models.py:101 part/models.py:809 -#: part/models.py:3123 plugin/models.py:94 report/models.py:152 +#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2027 +#: company/models.py:363 label/models.py:101 part/models.py:810 +#: part/models.py:3201 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 +#: templates/InvenTree/settings/notifications.html:17 #: templates/InvenTree/settings/plugin.html:60 #: templates/InvenTree/settings/plugin.html:104 #: templates/InvenTree/settings/plugin_settings.html:23 -#: templates/InvenTree/settings/settings.html:344 +#: templates/InvenTree/settings/settings.html:345 #: templates/js/translated/company.js:581 #: templates/js/translated/company.js:794 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:711 templates/js/translated/part.js:880 -#: templates/js/translated/part.js:2010 templates/js/translated/stock.js:2434 +#: templates/js/translated/part.js:982 templates/js/translated/part.js:1151 +#: templates/js/translated/part.js:2291 templates/js/translated/stock.js:2429 msgid "Name" msgstr "" @@ -292,24 +294,25 @@ msgstr "" #: company/models.py:522 company/templates/company/company_base.html:72 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:108 label/models.py:108 -#: order/models.py:83 part/admin.py:141 part/admin.py:222 part/models.py:832 -#: part/models.py:3132 part/templates/part/category.html:75 +#: order/models.py:83 part/admin.py:174 part/admin.py:255 part/models.py:833 +#: part/models.py:3210 part/templates/part/category.html:75 #: part/templates/part/part_base.html:172 #: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/admin.py:25 stock/templates/stock/location.html:117 +#: templates/InvenTree/settings/notifications.html:19 #: templates/InvenTree/settings/plugin_settings.html:28 -#: templates/InvenTree/settings/settings.html:355 +#: templates/InvenTree/settings/settings.html:356 #: templates/js/translated/bom.js:592 templates/js/translated/bom.js:895 #: templates/js/translated/build.js:2596 templates/js/translated/company.js:445 #: templates/js/translated/company.js:703 #: templates/js/translated/company.js:987 templates/js/translated/order.js:2030 #: templates/js/translated/order.js:2267 templates/js/translated/order.js:2845 -#: templates/js/translated/part.js:773 templates/js/translated/part.js:1223 -#: templates/js/translated/part.js:1497 templates/js/translated/part.js:2046 -#: templates/js/translated/part.js:2121 templates/js/translated/stock.js:1787 -#: templates/js/translated/stock.js:2466 templates/js/translated/stock.js:2526 +#: templates/js/translated/part.js:1044 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1768 templates/js/translated/part.js:2327 +#: templates/js/translated/part.js:2402 templates/js/translated/stock.js:1782 +#: templates/js/translated/stock.js:2461 templates/js/translated/stock.js:2521 msgid "Description" msgstr "Mô tả" @@ -322,7 +325,7 @@ msgid "parent" msgstr "" #: InvenTree/models.py:580 InvenTree/models.py:581 -#: templates/js/translated/part.js:2055 templates/js/translated/stock.js:2475 +#: templates/js/translated/part.js:2336 templates/js/translated/stock.js:2470 msgid "Path" msgstr "" @@ -354,7 +357,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:58 part/models.py:3468 +#: InvenTree/serializers.py:58 part/models.py:3546 msgid "Must be a valid number" msgstr "" @@ -421,107 +424,107 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:639 +#: InvenTree/settings.py:642 msgid "Czech" msgstr "" -#: InvenTree/settings.py:640 +#: InvenTree/settings.py:643 msgid "Danish" msgstr "" -#: InvenTree/settings.py:641 +#: InvenTree/settings.py:644 msgid "German" msgstr "" -#: InvenTree/settings.py:642 +#: InvenTree/settings.py:645 msgid "Greek" msgstr "" -#: InvenTree/settings.py:643 +#: InvenTree/settings.py:646 msgid "English" msgstr "" -#: InvenTree/settings.py:644 +#: InvenTree/settings.py:647 msgid "Spanish" msgstr "" -#: InvenTree/settings.py:645 +#: InvenTree/settings.py:648 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:646 +#: InvenTree/settings.py:649 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:647 +#: InvenTree/settings.py:650 msgid "French" msgstr "" -#: InvenTree/settings.py:648 +#: InvenTree/settings.py:651 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:649 +#: InvenTree/settings.py:652 msgid "Hungarian" msgstr "" -#: InvenTree/settings.py:650 +#: InvenTree/settings.py:653 msgid "Italian" msgstr "" -#: InvenTree/settings.py:651 +#: InvenTree/settings.py:654 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:652 +#: InvenTree/settings.py:655 msgid "Korean" msgstr "" -#: InvenTree/settings.py:653 +#: InvenTree/settings.py:656 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:654 +#: InvenTree/settings.py:657 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:655 +#: InvenTree/settings.py:658 msgid "Polish" msgstr "" -#: InvenTree/settings.py:656 +#: InvenTree/settings.py:659 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:657 +#: InvenTree/settings.py:660 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:658 +#: InvenTree/settings.py:661 msgid "Russian" msgstr "" -#: InvenTree/settings.py:659 +#: InvenTree/settings.py:662 msgid "Slovenian" msgstr "" -#: InvenTree/settings.py:660 +#: InvenTree/settings.py:663 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:661 +#: InvenTree/settings.py:664 msgid "Thai" msgstr "" -#: InvenTree/settings.py:662 +#: InvenTree/settings.py:665 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:663 +#: InvenTree/settings.py:666 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:664 +#: InvenTree/settings.py:667 msgid "Chinese" msgstr "" @@ -652,7 +655,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2124 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2119 msgid "Merged stock items" msgstr "" @@ -756,7 +759,7 @@ msgstr "Tạo đơn hàng" #: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:141 -#: templates/InvenTree/settings/sidebar.html:47 +#: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:254 users/models.py:41 msgid "Build Orders" msgstr "Tạo đơn hàng" @@ -766,8 +769,9 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:155 order/models.py:241 order/models.py:651 -#: order/models.py:941 part/admin.py:224 part/models.py:3378 +#: order/models.py:941 part/admin.py:257 part/models.py:3456 #: part/templates/part/upload_bom.html:54 +#: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 #: templates/js/translated/bom.js:729 templates/js/translated/bom.js:905 @@ -793,13 +797,15 @@ msgstr "" #: build/models.py:180 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:684 #: order/models.py:1038 order/models.py:1149 order/models.py:1150 -#: part/models.py:381 part/models.py:2781 part/models.py:2894 -#: part/models.py:2909 part/models.py:2928 part/models.py:2946 -#: part/models.py:3045 part/models.py:3166 part/models.py:3258 -#: part/models.py:3343 part/models.py:3659 part/serializers.py:853 -#: part/templates/part/part_app_base.html:8 +#: part/models.py:382 part/models.py:2799 part/models.py:2912 +#: part/models.py:2972 part/models.py:2987 part/models.py:3006 +#: part/models.py:3024 part/models.py:3123 part/models.py:3244 +#: part/models.py:3336 part/models.py:3421 part/models.py:3737 +#: part/serializers.py:894 part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 +#: report/templates/report/inventree_bill_of_materials_report.html:110 +#: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_base.html:109 #: report/templates/report/inventree_po_report.html:89 #: report/templates/report/inventree_so_report.html:90 stock/serializers.py:90 @@ -819,12 +825,12 @@ msgstr "" #: templates/js/translated/order.js:1172 templates/js/translated/order.js:1676 #: templates/js/translated/order.js:2252 templates/js/translated/order.js:3199 #: templates/js/translated/order.js:3595 templates/js/translated/order.js:3825 -#: templates/js/translated/part.js:1208 templates/js/translated/part.js:1280 -#: templates/js/translated/part.js:1474 templates/js/translated/pricing.js:102 -#: templates/js/translated/stock.js:618 templates/js/translated/stock.js:783 -#: templates/js/translated/stock.js:993 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2552 templates/js/translated/stock.js:2747 -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/part.js:1479 templates/js/translated/part.js:1551 +#: templates/js/translated/part.js:1745 templates/js/translated/pricing.js:102 +#: templates/js/translated/stock.js:617 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:992 templates/js/translated/stock.js:1738 +#: templates/js/translated/stock.js:2547 templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2879 msgid "Part" msgstr "Nguyên liệu" @@ -890,7 +896,7 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:252 order/models.py:87 part/models.py:1001 +#: build/models.py:252 order/models.py:87 part/models.py:1002 #: part/templates/part/part_base.html:318 templates/js/translated/order.js:2858 msgid "Creation Date" msgstr "" @@ -923,7 +929,7 @@ msgstr "" #: build/models.py:283 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:101 #: order/templates/order/order_base.html:185 -#: order/templates/order/sales_order_base.html:183 part/models.py:1005 +#: order/templates/order/sales_order_base.html:183 part/models.py:1006 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2658 templates/js/translated/order.js:2064 msgid "Responsible" @@ -936,7 +942,7 @@ msgstr "" #: build/models.py:289 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:188 -#: part/templates/part/part_base.html:376 stock/models.py:714 +#: part/templates/part/part_base.html:390 stock/models.py:714 #: stock/templates/stock/item_base.html:203 msgid "External Link" msgstr "" @@ -1011,8 +1017,8 @@ msgstr "" #: templates/js/translated/order.js:107 templates/js/translated/order.js:3200 #: templates/js/translated/order.js:3502 templates/js/translated/order.js:3507 #: templates/js/translated/order.js:3602 templates/js/translated/order.js:3694 -#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 -#: templates/js/translated/stock.js:2625 +#: templates/js/translated/part.js:803 templates/js/translated/stock.js:618 +#: templates/js/translated/stock.js:783 templates/js/translated/stock.js:2620 msgid "Stock Item" msgstr "" @@ -1022,12 +1028,13 @@ msgstr "" #: build/models.py:1364 build/serializers.py:192 #: build/templates/build/build_base.html:85 -#: build/templates/build/detail.html:34 common/models.py:1842 +#: build/templates/build/detail.html:34 common/models.py:1849 #: order/models.py:934 order/models.py:1460 order/serializers.py:1206 -#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:223 -#: part/forms.py:40 part/models.py:3359 +#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:256 +#: part/forms.py:40 part/models.py:2919 part/models.py:3437 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 +#: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_base.html:113 #: report/templates/report/inventree_po_report.html:90 #: report/templates/report/inventree_so_report.html:91 @@ -1049,13 +1056,14 @@ msgstr "" #: templates/js/translated/order.js:3201 templates/js/translated/order.js:3521 #: templates/js/translated/order.js:3608 templates/js/translated/order.js:3700 #: templates/js/translated/order.js:3847 templates/js/translated/order.js:4338 -#: templates/js/translated/part.js:1078 templates/js/translated/part.js:2568 +#: templates/js/translated/part.js:805 templates/js/translated/part.js:876 +#: templates/js/translated/part.js:1349 templates/js/translated/part.js:2849 #: templates/js/translated/pricing.js:114 #: templates/js/translated/pricing.js:207 #: templates/js/translated/pricing.js:255 -#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:490 -#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:814 -#: templates/js/translated/stock.js:2674 templates/js/translated/stock.js:2759 +#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:489 +#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:813 +#: templates/js/translated/stock.js:2669 templates/js/translated/stock.js:2754 msgid "Quantity" msgstr "" @@ -1097,8 +1105,8 @@ msgid "Enter quantity for build output" msgstr "" #: build/serializers.py:207 build/serializers.py:683 order/models.py:327 -#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:645 -#: part/serializers.py:1016 stock/models.py:574 stock/models.py:1312 +#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:686 +#: part/serializers.py:1057 stock/models.py:574 stock/models.py:1312 #: stock/serializers.py:294 msgid "Quantity must be greater than zero" msgstr "" @@ -1113,7 +1121,7 @@ msgstr "" #: build/serializers.py:231 order/serializers.py:463 order/serializers.py:1210 #: stock/serializers.py:303 templates/js/translated/order.js:1545 -#: templates/js/translated/stock.js:303 templates/js/translated/stock.js:491 +#: templates/js/translated/stock.js:302 templates/js/translated/stock.js:490 msgid "Serial Numbers" msgstr "" @@ -1146,9 +1154,10 @@ msgstr "" #: templates/js/translated/build.js:1759 templates/js/translated/order.js:1572 #: templates/js/translated/order.js:3514 templates/js/translated/order.js:3619 #: templates/js/translated/order.js:3627 templates/js/translated/order.js:3708 -#: templates/js/translated/part.js:183 templates/js/translated/stock.js:620 -#: templates/js/translated/stock.js:785 templates/js/translated/stock.js:995 -#: templates/js/translated/stock.js:1895 templates/js/translated/stock.js:2566 +#: templates/js/translated/part.js:186 templates/js/translated/part.js:804 +#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 +#: templates/js/translated/stock.js:994 templates/js/translated/stock.js:1890 +#: templates/js/translated/stock.js:2561 msgid "Location" msgstr "" @@ -1162,8 +1171,8 @@ msgstr "" #: stock/templates/stock/item_base.html:421 #: templates/js/translated/barcode.js:237 templates/js/translated/build.js:2630 #: templates/js/translated/order.js:1681 templates/js/translated/order.js:2034 -#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1870 -#: templates/js/translated/stock.js:2643 templates/js/translated/stock.js:2775 +#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:2638 templates/js/translated/stock.js:2770 msgid "Status" msgstr "Trạng thái" @@ -1239,8 +1248,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:595 build/serializers.py:640 part/models.py:3495 -#: part/models.py:3651 +#: build/serializers.py:595 build/serializers.py:640 part/models.py:3573 +#: part/models.py:3729 msgid "BOM Item" msgstr "" @@ -1406,7 +1415,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2670 templates/js/translated/order.js:2051 #: templates/js/translated/order.js:2382 templates/js/translated/order.js:2866 -#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1093 +#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1364 msgid "Target Date" msgstr "" @@ -1484,8 +1493,8 @@ msgstr "" #: stock/templates/stock/item_base.html:168 #: templates/js/translated/build.js:1250 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:1884 -#: templates/js/translated/stock.js:2782 +#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:1879 +#: templates/js/translated/stock.js:2777 #: templates/js/translated/table_filters.js:179 #: templates/js/translated/table_filters.js:270 msgid "Batch" @@ -1617,8 +1626,8 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:86 #: order/templates/order/sales_order_detail.html:140 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:210 -#: part/templates/part/part_sidebar.html:55 stock/templates/stock/item.html:117 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:233 +#: part/templates/part/part_sidebar.html:60 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" msgstr "" @@ -1635,7 +1644,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:316 +#: build/templates/build/index.html:18 part/templates/part/detail.html:339 msgid "New Build Order" msgstr "" @@ -1928,9 +1937,9 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1014 part/admin.py:41 part/models.py:3168 +#: common/models.py:1014 part/admin.py:41 part/models.py:3246 #: report/models.py:158 templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:504 +#: templates/js/translated/table_filters.js:508 msgid "Template" msgstr "" @@ -1938,7 +1947,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:1021 part/admin.py:37 part/admin.py:229 part/models.py:957 +#: common/models.py:1021 part/admin.py:37 part/admin.py:262 part/models.py:958 #: templates/js/translated/bom.js:1595 #: templates/js/translated/table_filters.js:196 #: templates/js/translated/table_filters.js:467 @@ -1949,7 +1958,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1028 part/admin.py:38 part/models.py:963 +#: common/models.py:1028 part/admin.py:38 part/models.py:964 #: templates/js/translated/table_filters.js:475 msgid "Component" msgstr "" @@ -1958,7 +1967,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1035 part/admin.py:39 part/models.py:974 +#: common/models.py:1035 part/admin.py:39 part/models.py:975 msgid "Purchaseable" msgstr "" @@ -1966,7 +1975,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:1042 part/admin.py:40 part/models.py:979 +#: common/models.py:1042 part/admin.py:40 part/models.py:980 #: templates/js/translated/table_filters.js:496 msgid "Salable" msgstr "" @@ -1975,10 +1984,10 @@ msgstr "" msgid "Parts are salable by default" msgstr "" -#: common/models.py:1049 part/admin.py:42 part/models.py:969 +#: common/models.py:1049 part/admin.py:42 part/models.py:970 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:120 -#: templates/js/translated/table_filters.js:508 +#: templates/js/translated/table_filters.js:512 msgid "Trackable" msgstr "" @@ -1986,10 +1995,10 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/models.py:1056 part/admin.py:43 part/models.py:989 +#: common/models.py:1056 part/admin.py:43 part/models.py:990 #: part/templates/part/part_base.html:156 #: templates/js/translated/table_filters.js:42 -#: templates/js/translated/table_filters.js:512 +#: templates/js/translated/table_filters.js:516 msgid "Virtual" msgstr "" @@ -2417,7 +2426,7 @@ msgstr "" msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1461 common/models.py:1803 +#: common/models.py:1461 common/models.py:1810 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -2749,41 +2758,50 @@ msgstr "" msgid "Display part scheduling information" msgstr "" -#: common/models.py:1778 -msgid "Table String Length" +#: common/models.py:1778 part/templates/part/detail.html:61 +#: templates/js/translated/part.js:822 +msgid "Part Stocktake" msgstr "" #: common/models.py:1779 +msgid "Display part stocktake information" +msgstr "" + +#: common/models.py:1785 +msgid "Table String Length" +msgstr "" + +#: common/models.py:1786 msgid "Maximimum length limit for strings displayed in table views" msgstr "" -#: common/models.py:1843 +#: common/models.py:1850 msgid "Price break quantity" msgstr "" -#: common/models.py:1850 company/serializers.py:393 order/models.py:975 -#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1145 +#: common/models.py:1857 company/serializers.py:393 order/models.py:975 +#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1416 #: templates/js/translated/pricing.js:354 msgid "Price" msgstr "" -#: common/models.py:1851 +#: common/models.py:1858 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2011 common/models.py:2189 +#: common/models.py:2018 common/models.py:2196 msgid "Endpoint" msgstr "" -#: common/models.py:2012 +#: common/models.py:2019 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2021 +#: common/models.py:2028 msgid "Name for this webhook" msgstr "" -#: common/models.py:2026 part/admin.py:36 part/models.py:984 +#: common/models.py:2033 part/admin.py:36 part/models.py:985 #: plugin/models.py:100 templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:116 #: templates/js/translated/table_filters.js:336 @@ -2791,131 +2809,133 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:2027 +#: common/models.py:2034 msgid "Is this webhook active" msgstr "" -#: common/models.py:2041 +#: common/models.py:2048 msgid "Token" msgstr "" -#: common/models.py:2042 +#: common/models.py:2049 msgid "Token for access" msgstr "" -#: common/models.py:2049 +#: common/models.py:2056 msgid "Secret" msgstr "" -#: common/models.py:2050 +#: common/models.py:2057 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2156 +#: common/models.py:2163 msgid "Message ID" msgstr "" -#: common/models.py:2157 +#: common/models.py:2164 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2165 +#: common/models.py:2172 msgid "Host" msgstr "" -#: common/models.py:2166 +#: common/models.py:2173 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2173 +#: common/models.py:2180 msgid "Header" msgstr "" -#: common/models.py:2174 +#: common/models.py:2181 msgid "Header of this message" msgstr "" -#: common/models.py:2180 +#: common/models.py:2187 msgid "Body" msgstr "" -#: common/models.py:2181 +#: common/models.py:2188 msgid "Body of this message" msgstr "" -#: common/models.py:2190 +#: common/models.py:2197 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2195 +#: common/models.py:2202 msgid "Worked on" msgstr "" -#: common/models.py:2196 +#: common/models.py:2203 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2355 +#: common/models.py:2362 msgid "Id" msgstr "" -#: common/models.py:2361 templates/js/translated/news.js:35 +#: common/models.py:2368 templates/js/translated/news.js:35 msgid "Title" msgstr "" -#: common/models.py:2371 templates/js/translated/news.js:51 +#: common/models.py:2378 templates/js/translated/news.js:51 msgid "Published" msgstr "" -#: common/models.py:2376 templates/InvenTree/settings/plugin.html:62 +#: common/models.py:2383 templates/InvenTree/settings/plugin.html:62 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/news.js:47 msgid "Author" msgstr "" -#: common/models.py:2381 templates/js/translated/news.js:43 +#: common/models.py:2388 templates/js/translated/news.js:43 msgid "Summary" msgstr "" -#: common/models.py:2386 +#: common/models.py:2393 msgid "Read" msgstr "" -#: common/models.py:2387 +#: common/models.py:2394 msgid "Was this news item read?" msgstr "" -#: common/notifications.py:293 +#: common/notifications.py:294 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:295 +#: common/notifications.py:296 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:301 +#: common/notifications.py:302 msgid "Items Received" msgstr "" -#: common/notifications.py:303 +#: common/notifications.py:304 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:415 +#: common/notifications.py:416 msgid "Error raised by plugin" msgstr "" #: common/views.py:85 order/templates/order/order_wizard/po_upload.html:51 #: order/templates/order/purchase_order_detail.html:25 order/views.py:102 -#: part/views.py:107 templates/patterns/wizard/upload.html:37 +#: part/templates/part/import_wizard/part_upload.html:58 part/views.py:109 +#: templates/patterns/wizard/upload.html:37 msgid "Upload File" msgstr "" #: common/views.py:86 order/templates/order/order_wizard/match_fields.html:52 #: order/views.py:103 #: part/templates/part/import_wizard/ajax_match_fields.html:45 -#: part/views.py:108 templates/patterns/wizard/match_fields.html:51 +#: part/templates/part/import_wizard/match_fields.html:52 part/views.py:110 +#: templates/patterns/wizard/match_fields.html:51 msgid "Match Fields" msgstr "" @@ -2934,7 +2954,9 @@ msgstr "" #: common/views.py:509 order/templates/order/order_wizard/match_fields.html:27 #: order/templates/order/order_wizard/match_parts.html:19 #: order/templates/order/order_wizard/po_upload.html:49 +#: part/templates/part/import_wizard/match_fields.html:27 #: part/templates/part/import_wizard/match_references.html:19 +#: part/templates/part/import_wizard/part_upload.html:56 #: templates/patterns/wizard/match_fields.html:26 #: templates/patterns/wizard/upload.html:35 msgid "Previous Step" @@ -2995,7 +3017,7 @@ msgstr "" msgid "Link to external company information" msgstr "" -#: company/models.py:140 part/models.py:878 +#: company/models.py:140 part/models.py:879 msgid "Image" msgstr "" @@ -3028,8 +3050,8 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:153 company/serializers.py:399 -#: company/templates/company/company_base.html:107 part/models.py:2762 -#: part/serializers.py:154 part/serializers.py:182 stock/serializers.py:182 +#: company/templates/company/company_base.html:107 part/models.py:2780 +#: part/serializers.py:156 part/serializers.py:184 stock/serializers.py:182 #: templates/InvenTree/settings/pricing.html:64 msgid "Currency" msgstr "" @@ -3055,12 +3077,12 @@ msgstr "" #: templates/js/translated/company.js:433 #: templates/js/translated/company.js:534 #: templates/js/translated/company.js:669 -#: templates/js/translated/company.js:957 templates/js/translated/part.js:238 +#: templates/js/translated/company.js:957 templates/js/translated/part.js:241 #: templates/js/translated/table_filters.js:439 msgid "Manufacturer" msgstr "Nhà sản xuất" -#: company/models.py:269 templates/js/translated/part.js:239 +#: company/models.py:269 templates/js/translated/part.js:242 msgid "Select manufacturer" msgstr "" @@ -3070,11 +3092,11 @@ msgstr "" #: templates/js/translated/company.js:533 #: templates/js/translated/company.js:685 #: templates/js/translated/company.js:976 templates/js/translated/order.js:2286 -#: templates/js/translated/part.js:249 templates/js/translated/part.js:1067 +#: templates/js/translated/part.js:252 templates/js/translated/part.js:1338 msgid "MPN" msgstr "" -#: company/models.py:276 templates/js/translated/part.js:250 +#: company/models.py:276 templates/js/translated/part.js:253 msgid "Manufacturer Part Number" msgstr "" @@ -3100,8 +3122,8 @@ msgstr "" #: company/models.py:370 #: report/templates/report/inventree_test_report_base.html:95 #: stock/models.py:2156 templates/js/translated/company.js:582 -#: templates/js/translated/company.js:800 templates/js/translated/part.js:889 -#: templates/js/translated/stock.js:1399 +#: templates/js/translated/company.js:800 templates/js/translated/part.js:1160 +#: templates/js/translated/stock.js:1398 msgid "Value" msgstr "" @@ -3109,10 +3131,10 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:377 part/admin.py:26 part/models.py:951 -#: part/models.py:3128 part/templates/part/part_base.html:286 -#: templates/InvenTree/settings/settings.html:349 -#: templates/js/translated/company.js:806 templates/js/translated/part.js:895 +#: company/models.py:377 part/admin.py:26 part/models.py:952 +#: part/models.py:3206 part/templates/part/part_base.html:286 +#: templates/InvenTree/settings/settings.html:350 +#: templates/js/translated/company.js:806 templates/js/translated/part.js:1166 msgid "Units" msgstr "" @@ -3132,24 +3154,24 @@ msgstr "" #: templates/js/translated/company.js:304 #: templates/js/translated/company.js:437 #: templates/js/translated/company.js:930 templates/js/translated/order.js:2017 -#: templates/js/translated/part.js:219 templates/js/translated/part.js:1035 +#: templates/js/translated/part.js:222 templates/js/translated/part.js:1306 #: templates/js/translated/pricing.js:231 #: templates/js/translated/table_filters.js:443 msgid "Supplier" msgstr "Nhà cung cấp" -#: company/models.py:498 templates/js/translated/part.js:220 +#: company/models.py:498 templates/js/translated/part.js:223 msgid "Select supplier" msgstr "" #: company/models.py:503 company/templates/company/supplier_part.html:146 #: part/bom.py:253 part/bom.py:281 templates/js/translated/company.js:303 -#: templates/js/translated/order.js:2273 templates/js/translated/part.js:230 -#: templates/js/translated/part.js:1053 templates/js/translated/pricing.js:243 +#: templates/js/translated/order.js:2273 templates/js/translated/part.js:233 +#: templates/js/translated/part.js:1324 templates/js/translated/pricing.js:243 msgid "SKU" msgstr "" -#: company/models.py:504 templates/js/translated/part.js:231 +#: company/models.py:504 templates/js/translated/part.js:234 msgid "Supplier stock keeping unit" msgstr "" @@ -3166,24 +3188,25 @@ msgid "Supplier part description" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:181 -#: part/admin.py:225 part/models.py:3381 part/templates/part/upload_bom.html:59 +#: part/admin.py:258 part/models.py:3459 part/templates/part/upload_bom.html:59 +#: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:397 msgid "Note" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "base cost" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:534 company/templates/company/supplier_part.html:167 #: stock/admin.py:101 stock/models.py:682 #: stock/templates/stock/item_base.html:243 -#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2016 +#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2011 msgid "Packaging" msgstr "" @@ -3196,7 +3219,7 @@ msgstr "" #: templates/js/translated/company.js:997 templates/js/translated/order.js:826 #: templates/js/translated/order.js:1253 templates/js/translated/order.js:1508 #: templates/js/translated/order.js:2317 templates/js/translated/order.js:2334 -#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1137 +#: templates/js/translated/part.js:1356 templates/js/translated/part.js:1408 msgid "Pack Quantity" msgstr "" @@ -3204,7 +3227,7 @@ msgstr "" msgid "Unit quantity supplied in a single pack" msgstr "" -#: company/models.py:544 part/models.py:1863 +#: company/models.py:544 part/models.py:1869 msgid "multiple" msgstr "" @@ -3216,8 +3239,8 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:1118 templates/js/translated/build.js:1883 -#: templates/js/translated/build.js:2770 templates/js/translated/part.js:623 -#: templates/js/translated/part.js:626 +#: templates/js/translated/build.js:2770 templates/js/translated/part.js:626 +#: templates/js/translated/part.js:629 #: templates/js/translated/table_filters.js:206 msgid "Available" msgstr "" @@ -3300,7 +3323,7 @@ msgstr "" #: stock/templates/stock/item_base.html:399 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:429 templates/js/translated/order.js:2827 -#: templates/js/translated/stock.js:2607 +#: templates/js/translated/stock.js:2602 #: templates/js/translated/table_filters.js:447 msgid "Customer" msgstr "" @@ -3314,7 +3337,7 @@ msgid "Phone" msgstr "" #: company/templates/company/company_base.html:206 -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:525 msgid "Remove Image" msgstr "" @@ -3323,19 +3346,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:209 -#: part/templates/part/part_base.html:514 +#: part/templates/part/part_base.html:528 #: templates/InvenTree/settings/user.html:87 #: templates/InvenTree/settings/user.html:149 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:238 -#: part/templates/part/part_base.html:543 +#: part/templates/part/part_base.html:557 msgid "Upload Image" msgstr "" #: company/templates/company/company_base.html:253 -#: part/templates/part/part_base.html:598 +#: part/templates/part/part_base.html:612 msgid "Download Image" msgstr "" @@ -3351,7 +3374,7 @@ msgstr "" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:357 +#: part/templates/part/detail.html:380 msgid "New Supplier Part" msgstr "" @@ -3380,7 +3403,7 @@ msgstr "" msgid "Create new manufacturer part" msgstr "" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:387 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:410 msgid "New Manufacturer Part" msgstr "" @@ -3394,9 +3417,9 @@ msgstr "" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:35 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:35 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:200 -#: templates/InvenTree/settings/sidebar.html:49 +#: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:293 templates/navbar.html:50 #: users/models.py:42 msgid "Purchase Orders" @@ -3417,9 +3440,9 @@ msgstr "" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:39 +#: part/templates/part/detail.html:130 part/templates/part/part_sidebar.html:39 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:220 -#: templates/InvenTree/settings/sidebar.html:51 +#: templates/InvenTree/settings/sidebar.html:53 #: templates/js/translated/search.js:317 templates/navbar.html:61 #: users/models.py:43 msgid "Sales Orders" @@ -3451,7 +3474,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:221 -#: part/templates/part/detail.html:87 part/templates/part/part_base.html:85 +#: part/templates/part/detail.html:110 part/templates/part/part_base.html:85 msgid "Order part" msgstr "" @@ -3482,28 +3505,28 @@ msgid "Suppliers" msgstr "" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:368 +#: part/templates/part/detail.html:391 msgid "Delete supplier parts" msgstr "" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:369 part/templates/part/detail.html:399 -#: templates/js/translated/forms.js:455 templates/js/translated/helpers.js:38 -#: templates/js/translated/part.js:351 templates/js/translated/stock.js:188 -#: users/models.py:224 +#: part/templates/part/detail.html:392 part/templates/part/detail.html:422 +#: templates/js/translated/forms.js:458 templates/js/translated/helpers.js:38 +#: templates/js/translated/part.js:354 templates/js/translated/stock.js:187 +#: users/models.py:225 msgid "Delete" msgstr "" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:184 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:207 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:189 +#: part/templates/part/detail.html:212 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:62 msgid "New Parameter" @@ -3514,7 +3537,7 @@ msgid "Delete parameters" msgstr "" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:825 +#: part/templates/part/detail.html:865 msgid "Add Parameter" msgstr "" @@ -3538,7 +3561,7 @@ msgstr "" #: company/templates/company/supplier_part.html:24 stock/models.py:665 #: stock/templates/stock/item_base.html:236 #: templates/js/translated/company.js:946 templates/js/translated/order.js:1173 -#: templates/js/translated/stock.js:1974 +#: templates/js/translated/stock.js:1969 msgid "Supplier Part" msgstr "" @@ -3578,7 +3601,7 @@ msgstr "" #: company/templates/company/supplier_part.html:56 #: company/templates/company/supplier_part.html:57 #: company/templates/company/supplier_part.html:222 -#: part/templates/part/detail.html:88 +#: part/templates/part/detail.html:111 msgid "Order Part" msgstr "" @@ -3630,7 +3653,7 @@ msgstr "" #: company/templates/company/supplier_part.html:204 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:198 -#: templates/js/translated/stock.js:467 +#: templates/js/translated/stock.js:466 msgid "New Stock Item" msgstr "" @@ -3662,10 +3685,10 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 -#: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/part.js:777 templates/js/translated/part.js:1378 -#: templates/js/translated/part.js:1534 templates/js/translated/stock.js:994 -#: templates/js/translated/stock.js:1799 templates/navbar.html:31 +#: templates/InvenTree/settings/sidebar.html:47 +#: templates/js/translated/part.js:1048 templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1805 templates/js/translated/stock.js:993 +#: templates/js/translated/stock.js:1794 templates/navbar.html:31 msgid "Stock" msgstr "Kiện hàng" @@ -3680,7 +3703,7 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:29 #: part/templates/part/part_sidebar.html:30 -#: templates/InvenTree/settings/sidebar.html:35 +#: templates/InvenTree/settings/sidebar.html:37 msgid "Pricing" msgstr "" @@ -3692,7 +3715,7 @@ msgstr "" #: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:155 templates/js/translated/search.js:225 -#: templates/js/translated/stock.js:2484 users/models.py:40 +#: templates/js/translated/stock.js:2479 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3801,9 +3824,9 @@ msgstr "" #: stock/templates/stock/item_base.html:182 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:619 templates/js/translated/order.js:1174 -#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1012 -#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1954 -#: templates/js/translated/stock.js:2588 +#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1283 +#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1949 +#: templates/js/translated/stock.js:2583 msgid "Purchase Order" msgstr "Đơn hàng" @@ -3973,7 +3996,7 @@ msgstr "" #: order/models.py:1046 order/templates/order/order_base.html:178 #: templates/js/translated/order.js:1679 templates/js/translated/order.js:2404 -#: templates/js/translated/part.js:1129 templates/js/translated/part.js:1161 +#: templates/js/translated/part.js:1400 templates/js/translated/part.js:1432 #: templates/js/translated/table_filters.js:358 msgid "Received" msgstr "" @@ -3984,7 +4007,7 @@ msgstr "" #: order/models.py:1054 stock/models.py:800 stock/serializers.py:173 #: stock/templates/stock/item_base.html:189 -#: templates/js/translated/stock.js:2005 +#: templates/js/translated/stock.js:2000 msgid "Purchase Price" msgstr "Giá mua" @@ -4350,18 +4373,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:9 #: part/templates/part/import_wizard/ajax_match_fields.html:9 +#: part/templates/part/import_wizard/match_fields.html:9 #: templates/patterns/wizard/match_fields.html:8 msgid "Missing selections for the following required columns" msgstr "" #: order/templates/order/order_wizard/match_fields.html:20 #: part/templates/part/import_wizard/ajax_match_fields.html:20 +#: part/templates/part/import_wizard/match_fields.html:20 #: templates/patterns/wizard/match_fields.html:19 msgid "Duplicate selections found, see below. Fix them then retry submitting." msgstr "" #: order/templates/order/order_wizard/match_fields.html:29 #: order/templates/order/order_wizard/match_parts.html:21 +#: part/templates/part/import_wizard/match_fields.html:29 #: part/templates/part/import_wizard/match_references.html:21 #: templates/patterns/wizard/match_fields.html:28 msgid "Submit Selections" @@ -4369,18 +4395,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:35 #: part/templates/part/import_wizard/ajax_match_fields.html:28 +#: part/templates/part/import_wizard/match_fields.html:35 #: templates/patterns/wizard/match_fields.html:34 msgid "File Fields" msgstr "" #: order/templates/order/order_wizard/match_fields.html:42 #: part/templates/part/import_wizard/ajax_match_fields.html:35 +#: part/templates/part/import_wizard/match_fields.html:42 #: templates/patterns/wizard/match_fields.html:41 msgid "Remove column" msgstr "" #: order/templates/order/order_wizard/match_fields.html:60 #: part/templates/part/import_wizard/ajax_match_fields.html:53 +#: part/templates/part/import_wizard/match_fields.html:60 #: templates/patterns/wizard/match_fields.html:59 msgid "Duplicate selection" msgstr "" @@ -4389,12 +4418,13 @@ msgstr "" #: order/templates/order/order_wizard/match_parts.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: 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:102 templates/js/translated/build.js:485 #: templates/js/translated/build.js:641 templates/js/translated/build.js:2088 #: templates/js/translated/order.js:1122 templates/js/translated/order.js:1624 -#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:657 -#: templates/js/translated/stock.js:825 +#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:824 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4429,6 +4459,7 @@ msgstr "" #: order/templates/order/order_wizard/po_upload.html:27 #: part/templates/part/import_wizard/ajax_part_upload.html:10 +#: part/templates/part/import_wizard/part_upload.html:26 #: templates/patterns/wizard/upload.html:13 #, python-format msgid "Step %(step)s of %(count)s" @@ -4567,12 +4598,12 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:19 part/admin.py:219 part/models.py:3262 stock/admin.py:84 +#: part/admin.py:19 part/admin.py:252 part/models.py:3340 stock/admin.py:84 #: templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/admin.py:20 part/admin.py:221 part/models.py:3266 stock/admin.py:85 +#: part/admin.py:20 part/admin.py:254 part/models.py:3344 stock/admin.py:85 msgid "Part Name" msgstr "" @@ -4580,32 +4611,32 @@ msgstr "" msgid "Part Description" msgstr "" -#: part/admin.py:22 part/models.py:852 part/templates/part/part_base.html:272 -#: templates/js/translated/part.js:763 templates/js/translated/part.js:1491 -#: templates/js/translated/stock.js:1765 +#: part/admin.py:22 part/models.py:853 part/templates/part/part_base.html:272 +#: templates/js/translated/part.js:1034 templates/js/translated/part.js:1762 +#: templates/js/translated/stock.js:1760 msgid "IPN" msgstr "" -#: part/admin.py:23 part/models.py:860 part/templates/part/part_base.html:279 -#: report/models.py:171 templates/js/translated/part.js:768 +#: part/admin.py:23 part/models.py:861 part/templates/part/part_base.html:279 +#: report/models.py:171 templates/js/translated/part.js:1039 msgid "Revision" msgstr "" -#: part/admin.py:24 part/admin.py:145 part/models.py:838 +#: part/admin.py:24 part/admin.py:178 part/models.py:839 #: part/templates/part/category.html:87 part/templates/part/part_base.html:300 msgid "Keywords" msgstr "" -#: part/admin.py:28 part/admin.py:139 +#: part/admin.py:28 part/admin.py:172 #: templates/js/translated/model_renderers.js:338 msgid "Category ID" msgstr "" -#: part/admin.py:29 part/admin.py:140 +#: part/admin.py:29 part/admin.py:173 msgid "Category Name" msgstr "" -#: part/admin.py:30 part/admin.py:144 +#: part/admin.py:30 part/admin.py:177 msgid "Default Location ID" msgstr "" @@ -4613,7 +4644,7 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:33 part/models.py:944 part/templates/part/part_base.html:206 +#: part/admin.py:33 part/models.py:945 part/templates/part/part_base.html:206 msgid "Minimum Stock" msgstr "" @@ -4625,8 +4656,8 @@ msgstr "" #: part/admin.py:48 part/bom.py:145 part/templates/part/part_base.html:213 #: templates/js/translated/bom.js:1156 templates/js/translated/build.js:1935 -#: templates/js/translated/part.js:613 templates/js/translated/part.js:633 -#: templates/js/translated/part.js:1381 templates/js/translated/part.js:1559 +#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 +#: templates/js/translated/part.js:1652 templates/js/translated/part.js:1830 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4642,115 +4673,115 @@ msgid "Allocated" msgstr "" #: part/admin.py:51 part/templates/part/part_base.html:244 -#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 -#: templates/js/translated/part.js:1385 templates/js/translated/part.js:1566 +#: templates/js/translated/part.js:619 templates/js/translated/part.js:639 +#: templates/js/translated/part.js:1656 templates/js/translated/part.js:1837 msgid "Building" msgstr "" -#: part/admin.py:52 part/models.py:2846 +#: part/admin.py:52 part/models.py:2864 msgid "Minimum Cost" msgstr "" -#: part/admin.py:53 part/models.py:2852 +#: part/admin.py:53 part/models.py:2870 msgid "Maximum Cost" msgstr "" -#: part/admin.py:142 part/admin.py:216 stock/admin.py:26 stock/admin.py:98 +#: part/admin.py:175 part/admin.py:249 stock/admin.py:26 stock/admin.py:98 msgid "Parent ID" msgstr "" -#: part/admin.py:143 part/admin.py:218 stock/admin.py:27 +#: part/admin.py:176 part/admin.py:251 stock/admin.py:27 msgid "Parent Name" msgstr "" -#: part/admin.py:146 part/templates/part/category.html:81 +#: part/admin.py:179 part/templates/part/category.html:81 #: part/templates/part/category.html:94 msgid "Category Path" msgstr "" -#: part/admin.py:149 part/models.py:382 part/templates/part/cat_link.html:3 +#: part/admin.py:182 part/models.py:383 part/templates/part/cat_link.html:3 #: part/templates/part/category.html:23 part/templates/part/category.html:134 #: part/templates/part/category.html:154 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:84 -#: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:2065 templates/js/translated/search.js:146 +#: templates/InvenTree/settings/sidebar.html:43 +#: templates/js/translated/part.js:2346 templates/js/translated/search.js:146 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "Nguyên liệu" -#: part/admin.py:211 +#: part/admin.py:244 msgid "BOM Level" msgstr "" -#: part/admin.py:213 +#: part/admin.py:246 msgid "BOM Item ID" msgstr "" -#: part/admin.py:217 +#: part/admin.py:250 msgid "Parent IPN" msgstr "" -#: part/admin.py:220 part/models.py:3270 +#: part/admin.py:253 part/models.py:3348 msgid "Part IPN" msgstr "" -#: part/admin.py:226 templates/js/translated/pricing.js:91 +#: part/admin.py:259 templates/js/translated/pricing.js:91 #: templates/js/translated/pricing.js:732 msgid "Minimum Price" msgstr "" -#: part/admin.py:227 templates/js/translated/pricing.js:86 +#: part/admin.py:260 templates/js/translated/pricing.js:86 #: templates/js/translated/pricing.js:740 msgid "Maximum Price" msgstr "" -#: part/api.py:536 +#: part/api.py:538 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:556 +#: part/api.py:558 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:574 +#: part/api.py:576 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:660 +#: part/api.py:662 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:818 +#: part/api.py:820 msgid "Valid" msgstr "" -#: part/api.py:819 +#: part/api.py:821 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:825 +#: part/api.py:827 msgid "This option must be selected" msgstr "" -#: part/api.py:1265 +#: part/api.py:1281 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1269 +#: part/api.py:1285 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1284 +#: part/api.py:1300 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1315 part/api.py:1319 part/api.py:1334 part/api.py:1338 +#: part/api.py:1331 part/api.py:1335 part/api.py:1350 part/api.py:1354 msgid "This field is required" msgstr "" -#: part/bom.py:142 part/models.py:116 part/models.py:887 -#: part/templates/part/category.html:109 part/templates/part/part_base.html:360 +#: part/bom.py:142 part/models.py:116 part/models.py:888 +#: part/templates/part/category.html:109 part/templates/part/part_base.html:374 msgid "Default Location" msgstr "" @@ -4801,7 +4832,7 @@ msgstr "" msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:159 part/models.py:3211 part/templates/part/category.html:16 +#: part/models.py:159 part/models.py:3289 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -4812,423 +4843,459 @@ msgstr "" msgid "Part Categories" msgstr "" -#: part/models.py:468 +#: part/models.py:469 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:538 part/models.py:550 +#: part/models.py:539 part/models.py:551 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:640 +#: part/models.py:641 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:771 +#: part/models.py:772 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:776 +#: part/models.py:777 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:790 +#: part/models.py:791 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:808 part/models.py:3267 +#: part/models.py:809 part/models.py:3345 msgid "Part name" msgstr "" -#: part/models.py:815 +#: part/models.py:816 msgid "Is Template" msgstr "" -#: part/models.py:816 +#: part/models.py:817 msgid "Is this part a template part?" msgstr "" -#: part/models.py:826 +#: part/models.py:827 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:827 +#: part/models.py:828 msgid "Variant Of" msgstr "" -#: part/models.py:833 +#: part/models.py:834 msgid "Part description" msgstr "" -#: part/models.py:839 +#: part/models.py:840 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:846 part/models.py:2966 part/models.py:3210 +#: part/models.py:847 part/models.py:3044 part/models.py:3288 #: part/templates/part/part_base.html:263 -#: templates/InvenTree/settings/settings.html:229 +#: templates/InvenTree/settings/settings.html:230 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1513 templates/js/translated/part.js:1770 +#: templates/js/translated/part.js:1784 templates/js/translated/part.js:2051 msgid "Category" msgstr "" -#: part/models.py:847 +#: part/models.py:848 msgid "Part category" msgstr "" -#: part/models.py:853 +#: part/models.py:854 msgid "Internal Part Number" msgstr "" -#: part/models.py:859 +#: part/models.py:860 msgid "Part revision or version number" msgstr "" -#: part/models.py:885 +#: part/models.py:886 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:930 part/templates/part/part_base.html:369 +#: part/models.py:931 part/templates/part/part_base.html:383 msgid "Default Supplier" msgstr "" -#: part/models.py:931 +#: part/models.py:932 msgid "Default supplier part" msgstr "" -#: part/models.py:938 +#: part/models.py:939 msgid "Default Expiry" msgstr "" -#: part/models.py:939 +#: part/models.py:940 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:945 +#: part/models.py:946 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:952 +#: part/models.py:953 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:958 +#: part/models.py:959 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:964 +#: part/models.py:965 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:970 +#: part/models.py:971 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:975 +#: part/models.py:976 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:980 +#: part/models.py:981 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:985 +#: part/models.py:986 msgid "Is this part active?" msgstr "" -#: part/models.py:990 +#: part/models.py:991 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:992 +#: part/models.py:993 msgid "Part notes" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "BOM checksum" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:997 +#: part/models.py:998 msgid "BOM checked by" msgstr "" -#: part/models.py:999 +#: part/models.py:1000 msgid "BOM checked date" msgstr "" -#: part/models.py:1003 +#: part/models.py:1004 msgid "Creation User" msgstr "" -#: part/models.py:1863 +#: part/models.py:1010 part/templates/part/part_base.html:345 +#: stock/templates/stock/item_base.html:445 +#: templates/js/translated/part.js:1901 +msgid "Last Stocktake" +msgstr "" + +#: part/models.py:1869 msgid "Sell multiple" msgstr "" -#: part/models.py:2763 +#: part/models.py:2781 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:2768 +#: part/models.py:2786 templates/js/translated/part.js:806 msgid "Updated" msgstr "" -#: part/models.py:2769 +#: part/models.py:2787 msgid "Timestamp of last pricing update" msgstr "" -#: part/models.py:2786 +#: part/models.py:2804 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:2787 +#: part/models.py:2805 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:2792 +#: part/models.py:2810 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:2793 +#: part/models.py:2811 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:2798 +#: part/models.py:2816 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:2799 +#: part/models.py:2817 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:2804 +#: part/models.py:2822 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:2805 +#: part/models.py:2823 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:2810 +#: part/models.py:2828 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:2811 +#: part/models.py:2829 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:2816 +#: part/models.py:2834 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:2817 +#: part/models.py:2835 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:2822 +#: part/models.py:2840 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:2823 +#: part/models.py:2841 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:2828 +#: part/models.py:2846 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:2829 +#: part/models.py:2847 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:2834 +#: part/models.py:2852 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:2835 +#: part/models.py:2853 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:2840 +#: part/models.py:2858 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:2841 +#: part/models.py:2859 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:2847 +#: part/models.py:2865 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:2853 +#: part/models.py:2871 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:2858 +#: part/models.py:2876 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:2859 +#: part/models.py:2877 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:2864 +#: part/models.py:2882 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:2865 +#: part/models.py:2883 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:2870 +#: part/models.py:2888 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:2871 +#: part/models.py:2889 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:2876 +#: part/models.py:2894 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:2877 +#: part/models.py:2895 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3013 +#: part/models.py:2913 +msgid "Part for stocktake" +msgstr "" + +#: part/models.py:2920 +msgid "Total available stock at time of stocktake" +msgstr "" + +#: part/models.py:2924 part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:63 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:2043 templates/js/translated/part.js:887 +#: templates/js/translated/pricing.js:537 +#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2511 +msgid "Date" +msgstr "" + +#: part/models.py:2925 +msgid "Date stocktake was performed" +msgstr "" + +#: part/models.py:2933 +msgid "Additional notes" +msgstr "" + +#: part/models.py:2941 +msgid "User who performed this stocktake" +msgstr "" + +#: part/models.py:3091 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3030 +#: part/models.py:3108 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:3050 templates/js/translated/part.js:2116 -#: templates/js/translated/stock.js:1379 +#: part/models.py:3128 templates/js/translated/part.js:2397 +#: templates/js/translated/stock.js:1378 msgid "Test Name" msgstr "" -#: part/models.py:3051 +#: part/models.py:3129 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3056 +#: part/models.py:3134 msgid "Test Description" msgstr "" -#: part/models.py:3057 +#: part/models.py:3135 msgid "Enter description for this test" msgstr "" -#: part/models.py:3062 templates/js/translated/part.js:2125 +#: part/models.py:3140 templates/js/translated/part.js:2406 #: templates/js/translated/table_filters.js:322 msgid "Required" msgstr "" -#: part/models.py:3063 +#: part/models.py:3141 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3068 templates/js/translated/part.js:2133 +#: part/models.py:3146 templates/js/translated/part.js:2414 msgid "Requires Value" msgstr "" -#: part/models.py:3069 +#: part/models.py:3147 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3074 templates/js/translated/part.js:2140 +#: part/models.py:3152 templates/js/translated/part.js:2421 msgid "Requires Attachment" msgstr "" -#: part/models.py:3075 +#: part/models.py:3153 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3116 +#: part/models.py:3194 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3124 +#: part/models.py:3202 msgid "Parameter Name" msgstr "" -#: part/models.py:3128 +#: part/models.py:3206 msgid "Parameter Units" msgstr "" -#: part/models.py:3133 +#: part/models.py:3211 msgid "Parameter description" msgstr "" -#: part/models.py:3166 +#: part/models.py:3244 msgid "Parent Part" msgstr "" -#: part/models.py:3168 part/models.py:3216 part/models.py:3217 -#: templates/InvenTree/settings/settings.html:224 +#: part/models.py:3246 part/models.py:3294 part/models.py:3295 +#: templates/InvenTree/settings/settings.html:225 msgid "Parameter Template" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Data" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Parameter Value" msgstr "" -#: part/models.py:3221 templates/InvenTree/settings/settings.html:233 +#: part/models.py:3299 templates/InvenTree/settings/settings.html:234 msgid "Default Value" msgstr "" -#: part/models.py:3222 +#: part/models.py:3300 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3259 +#: part/models.py:3337 msgid "Part ID or part name" msgstr "" -#: part/models.py:3263 +#: part/models.py:3341 msgid "Unique part ID value" msgstr "" -#: part/models.py:3271 +#: part/models.py:3349 msgid "Part IPN value" msgstr "" -#: part/models.py:3274 +#: part/models.py:3352 msgid "Level" msgstr "" -#: part/models.py:3275 +#: part/models.py:3353 msgid "BOM level" msgstr "" -#: part/models.py:3344 +#: part/models.py:3422 msgid "Select parent part" msgstr "" -#: part/models.py:3352 +#: part/models.py:3430 msgid "Sub part" msgstr "" -#: part/models.py:3353 +#: part/models.py:3431 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:3359 +#: part/models.py:3437 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:3363 part/templates/part/upload_bom.html:58 +#: part/models.py:3441 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:933 templates/js/translated/bom.js:986 #: templates/js/translated/build.js:1868 #: templates/js/translated/table_filters.js:84 @@ -5236,189 +5303,189 @@ msgstr "" msgid "Optional" msgstr "" -#: part/models.py:3364 +#: part/models.py:3442 msgid "This BOM item is optional" msgstr "" -#: part/models.py:3369 templates/js/translated/bom.js:929 +#: part/models.py:3447 templates/js/translated/bom.js:929 #: templates/js/translated/bom.js:995 templates/js/translated/build.js:1859 #: templates/js/translated/table_filters.js:88 msgid "Consumable" msgstr "" -#: part/models.py:3370 +#: part/models.py:3448 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:3374 part/templates/part/upload_bom.html:55 +#: part/models.py:3452 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:3375 +#: part/models.py:3453 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:3378 +#: part/models.py:3456 msgid "BOM item reference" msgstr "" -#: part/models.py:3381 +#: part/models.py:3459 msgid "BOM item notes" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "Checksum" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "BOM line checksum" msgstr "" -#: part/models.py:3387 part/templates/part/upload_bom.html:57 +#: part/models.py:3465 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1012 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:108 msgid "Inherited" msgstr "" -#: part/models.py:3388 +#: part/models.py:3466 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:3393 part/templates/part/upload_bom.html:56 +#: part/models.py:3471 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1004 msgid "Allow Variants" msgstr "" -#: part/models.py:3394 +#: part/models.py:3472 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:3480 stock/models.py:558 +#: part/models.py:3558 stock/models.py:558 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:3489 part/models.py:3491 +#: part/models.py:3567 part/models.py:3569 msgid "Sub part must be specified" msgstr "" -#: part/models.py:3618 +#: part/models.py:3696 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:3639 +#: part/models.py:3717 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:3652 +#: part/models.py:3730 msgid "Parent BOM item" msgstr "" -#: part/models.py:3660 +#: part/models.py:3738 msgid "Substitute part" msgstr "" -#: part/models.py:3675 +#: part/models.py:3753 msgid "Part 1" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Part 2" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Select Related Part" msgstr "" -#: part/models.py:3697 +#: part/models.py:3775 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:3701 +#: part/models.py:3779 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:155 part/serializers.py:183 stock/serializers.py:183 +#: part/serializers.py:157 part/serializers.py:185 stock/serializers.py:183 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:543 +#: part/serializers.py:584 msgid "Update" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:585 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:854 +#: part/serializers.py:895 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:862 +#: part/serializers.py:903 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:863 +#: part/serializers.py:904 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:868 +#: part/serializers.py:909 msgid "Include Inherited" msgstr "" -#: part/serializers.py:869 +#: part/serializers.py:910 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:874 +#: part/serializers.py:915 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:875 +#: part/serializers.py:916 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:921 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:881 +#: part/serializers.py:922 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:962 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:922 +#: part/serializers.py:963 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:952 +#: part/serializers.py:993 msgid "No part column specified" msgstr "" -#: part/serializers.py:995 +#: part/serializers.py:1036 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:998 +#: part/serializers.py:1039 msgid "No matching part found" msgstr "" -#: part/serializers.py:1001 +#: part/serializers.py:1042 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1010 +#: part/serializers.py:1051 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1059 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1039 +#: part/serializers.py:1080 msgid "At least one BOM item is required" msgstr "" @@ -5450,7 +5517,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:267 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:290 msgid "BOM actions" msgstr "" @@ -5507,8 +5574,8 @@ msgstr "" msgid "New Part" msgstr "" -#: part/templates/part/category.html:169 part/templates/part/detail.html:366 -#: part/templates/part/detail.html:397 +#: part/templates/part/category.html:169 part/templates/part/detail.html:389 +#: part/templates/part/detail.html:420 msgid "Options" msgstr "" @@ -5556,7 +5623,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:404 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:407 msgid "Duplicate Part" msgstr "" @@ -5593,118 +5660,128 @@ msgstr "" msgid "Refresh" msgstr "" -#: part/templates/part/detail.html:59 +#: part/templates/part/detail.html:65 +msgid "Add stocktake information" +msgstr "" + +#: part/templates/part/detail.html:66 part/templates/part/part_sidebar.html:49 +#: stock/admin.py:107 templates/js/translated/stock.js:1905 +msgid "Stocktake" +msgstr "" + +#: part/templates/part/detail.html:82 msgid "Part Test Templates" msgstr "" -#: part/templates/part/detail.html:64 +#: part/templates/part/detail.html:87 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:144 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:141 +#: part/templates/part/detail.html:164 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:156 +#: part/templates/part/detail.html:179 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:160 +#: part/templates/part/detail.html:183 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:161 +#: part/templates/part/detail.html:184 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:188 +#: part/templates/part/detail.html:211 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:225 part/templates/part/part_sidebar.html:52 +#: part/templates/part/detail.html:248 part/templates/part/part_sidebar.html:57 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:229 part/templates/part/detail.html:230 +#: part/templates/part/detail.html:252 part/templates/part/detail.html:253 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:250 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:273 part/templates/part/part_sidebar.html:17 +#: report/templates/report/inventree_bill_of_materials_report.html:100 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:255 +#: part/templates/part/detail.html:278 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:259 templates/js/translated/bom.js:309 +#: part/templates/part/detail.html:282 templates/js/translated/bom.js:309 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:261 +#: part/templates/part/detail.html:284 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:271 +#: part/templates/part/detail.html:294 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:272 templates/js/translated/part.js:276 +#: part/templates/part/detail.html:295 templates/js/translated/part.js:279 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:273 +#: part/templates/part/detail.html:296 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:278 part/templates/part/detail.html:279 +#: part/templates/part/detail.html:301 part/templates/part/detail.html:302 #: templates/js/translated/bom.js:1268 templates/js/translated/bom.js:1269 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:292 +#: part/templates/part/detail.html:315 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:310 +#: part/templates/part/detail.html:333 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:337 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:360 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:353 +#: part/templates/part/detail.html:376 msgid "Part Suppliers" msgstr "" -#: part/templates/part/detail.html:383 +#: part/templates/part/detail.html:406 msgid "Part Manufacturers" msgstr "" -#: part/templates/part/detail.html:399 +#: part/templates/part/detail.html:422 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:696 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:704 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:796 msgid "Add Test Result Template" msgstr "" #: part/templates/part/import_wizard/ajax_part_upload.html:29 #: part/templates/part/import_wizard/part_upload.html:14 -msgid "Unsuffitient privileges." +msgid "Insufficient privileges." msgstr "" #: part/templates/part/import_wizard/part_upload.html:8 @@ -5715,6 +5792,34 @@ msgstr "" msgid "Import Parts from File" msgstr "" +#: part/templates/part/import_wizard/part_upload.html:31 +msgid "Requirements for part import" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "The part import file must contain the required named columns as provided in the " +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:89 +msgid "Download Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:92 +#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 +#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 +msgid "Format" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:93 +#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 +#: templates/js/translated/order.js:999 +msgid "Select file format" +msgstr "" + #: part/templates/part/part_app_base.html:12 msgid "Part List" msgstr "" @@ -5804,12 +5909,12 @@ msgstr "" #: templates/js/translated/company.js:660 #: templates/js/translated/company.js:921 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:677 templates/js/translated/part.js:755 +#: templates/js/translated/part.js:680 templates/js/translated/part.js:1026 msgid "Inactive" msgstr "" #: part/templates/part/part_base.html:165 -#: part/templates/part/part_base.html:666 +#: part/templates/part/part_base.html:680 msgid "Show Part Details" msgstr "" @@ -5837,38 +5942,38 @@ msgid "Minimum stock level" msgstr "" #: part/templates/part/part_base.html:330 templates/js/translated/bom.js:1032 -#: templates/js/translated/part.js:798 templates/js/translated/part.js:1604 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:1875 #: templates/js/translated/pricing.js:124 #: templates/js/translated/pricing.js:762 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:345 +#: part/templates/part/part_base.html:359 msgid "Latest Serial Number" msgstr "Số seri mới nhất" -#: part/templates/part/part_base.html:349 +#: part/templates/part/part_base.html:363 #: stock/templates/stock/item_base.html:331 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:449 +#: part/templates/part/part_base.html:463 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:495 +#: part/templates/part/part_base.html:509 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:512 +#: part/templates/part/part_base.html:526 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:564 +#: part/templates/part/part_base.html:578 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:660 +#: part/templates/part/part_base.html:674 msgid "Hide Part Details" msgstr "" @@ -5920,15 +6025,6 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" -#: part/templates/part/part_scheduling.html:13 -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:63 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:2043 templates/js/translated/pricing.js:537 -#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2516 -msgid "Date" -msgstr "" - #: part/templates/part/part_scheduling.html:14 msgid "Scheduled Quantity" msgstr "" @@ -5941,7 +6037,7 @@ msgstr "" msgid "Scheduling" msgstr "" -#: part/templates/part/part_sidebar.html:48 +#: part/templates/part/part_sidebar.html:53 msgid "Test Templates" msgstr "" @@ -5960,7 +6056,7 @@ msgstr "" #: part/templates/part/prices.html:25 stock/admin.py:106 #: stock/templates/stock/item_base.html:440 #: templates/js/translated/company.js:1039 -#: templates/js/translated/stock.js:1940 +#: templates/js/translated/stock.js:1935 msgid "Last Updated" msgstr "" @@ -6023,8 +6119,8 @@ msgstr "" msgid "Add Sell Price Break" msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:639 -#: templates/js/translated/part.js:1373 templates/js/translated/part.js:1375 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:1644 templates/js/translated/part.js:1646 msgid "No Stock" msgstr "" @@ -6087,27 +6183,32 @@ msgstr "" msgid "{title} v{version}" msgstr "" -#: part/views.py:109 +#: part/views.py:111 msgid "Match References" msgstr "" -#: part/views.py:354 +#: part/views.py:239 +#, python-brace-format +msgid "Can't import part {name} because there is no category assigned" +msgstr "" + +#: part/views.py:378 msgid "Part QR Code" msgstr "" -#: part/views.py:372 +#: part/views.py:396 msgid "Select Part Image" msgstr "" -#: part/views.py:398 +#: part/views.py:422 msgid "Updated part image" msgstr "" -#: part/views.py:401 +#: part/views.py:425 msgid "Part image not found" msgstr "" -#: part/views.py:493 +#: part/views.py:517 msgid "Part Pricing" msgstr "" @@ -6156,28 +6257,48 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:29 -#: plugin/builtin/integration/core_notifications.py:31 +#: plugin/builtin/integration/core_notifications.py:33 msgid "InvenTree contributors" msgstr "" -#: plugin/builtin/integration/core_notifications.py:30 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:32 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notificaton methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:37 -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:80 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:38 -#: plugin/builtin/integration/core_notifications.py:57 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:81 msgid "Allow sending of emails for event notifications" msgstr "" +#: plugin/builtin/integration/core_notifications.py:45 +msgid "Enable slack notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:46 +msgid "Allow sending of slack channel messages for event notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:51 +msgid "Slack incoming webhook url" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:52 +msgid "URL that is used to send messages to a slack channel" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:162 +msgid "Open link" +msgstr "" + #: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" @@ -6409,6 +6530,10 @@ msgstr "" msgid "Asset file description" msgstr "" +#: report/templates/report/inventree_bill_of_materials_report.html:133 +msgid "Materials needed" +msgstr "" + #: report/templates/report/inventree_build_order_base.html:146 msgid "Required For" msgstr "" @@ -6427,7 +6552,7 @@ msgstr "" #: templates/js/translated/build.js:1244 templates/js/translated/build.js:1745 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:121 templates/js/translated/order.js:3611 -#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:522 +#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:521 msgid "Serial Number" msgstr "" @@ -6459,8 +6584,9 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: stock/admin.py:87 templates/js/translated/stock.js:642 -#: templates/js/translated/stock.js:812 templates/js/translated/stock.js:2765 +#: stock/admin.py:87 templates/js/translated/part.js:749 +#: templates/js/translated/stock.js:641 templates/js/translated/stock.js:811 +#: templates/js/translated/stock.js:2760 msgid "Serial" msgstr "" @@ -6515,13 +6641,9 @@ msgstr "" msgid "Purchase Order ID" msgstr "" -#: stock/admin.py:107 templates/js/translated/stock.js:1910 -msgid "Stocktake" -msgstr "" - #: stock/admin.py:108 stock/models.py:764 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/stock.js:1924 +#: templates/js/translated/stock.js:1919 msgid "Expiry Date" msgstr "" @@ -6936,7 +7058,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2912 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2907 msgid "Install Stock Item" msgstr "" @@ -6944,7 +7066,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1561 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1560 msgid "Add Test Result" msgstr "" @@ -7117,10 +7239,6 @@ msgstr "" msgid "Stale" msgstr "" -#: stock/templates/stock/item_base.html:445 -msgid "Last Stocktake" -msgstr "" - #: stock/templates/stock/item_base.html:449 msgid "No stocktake performed" msgstr "" @@ -7394,7 +7512,8 @@ msgstr "" #: templates/InvenTree/notifications/notifications.html:10 #: templates/InvenTree/notifications/sidebar.html:5 -#: templates/InvenTree/settings/sidebar.html:17 templates/notifications.html:5 +#: templates/InvenTree/settings/sidebar.html:17 +#: templates/InvenTree/settings/sidebar.html:35 templates/notifications.html:5 msgid "Notifications" msgstr "" @@ -7475,6 +7594,14 @@ msgstr "" msgid "Open in new tab" msgstr "" +#: templates/InvenTree/settings/notifications.html:9 +msgid "Global Notification Settings" +msgstr "" + +#: templates/InvenTree/settings/notifications.html:18 +msgid "Slug" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "" @@ -7492,7 +7619,7 @@ msgid "Part Parameter Templates" msgstr "" #: templates/InvenTree/settings/plugin.html:10 -#: templates/InvenTree/settings/sidebar.html:55 +#: templates/InvenTree/settings/sidebar.html:57 msgid "Plugin Settings" msgstr "" @@ -7501,7 +7628,7 @@ msgid "Changing the settings below require you to immediately restart the server msgstr "" #: templates/InvenTree/settings/plugin.html:38 -#: templates/InvenTree/settings/sidebar.html:57 +#: templates/InvenTree/settings/sidebar.html:59 msgid "Plugins" msgstr "" @@ -7669,67 +7796,67 @@ msgstr "" msgid "Edit setting" msgstr "" -#: templates/InvenTree/settings/settings.html:117 +#: templates/InvenTree/settings/settings.html:118 msgid "Edit Plugin Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:119 +#: templates/InvenTree/settings/settings.html:120 msgid "Edit Notification Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:122 +#: templates/InvenTree/settings/settings.html:123 msgid "Edit Global Setting" msgstr "Chỉnh sửa cài đặt toàn cục" -#: templates/InvenTree/settings/settings.html:124 +#: templates/InvenTree/settings/settings.html:125 msgid "Edit User Setting" msgstr "Chỉnh sửa cài đặt người dùng" -#: templates/InvenTree/settings/settings.html:214 +#: templates/InvenTree/settings/settings.html:215 msgid "No category parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:236 -#: templates/InvenTree/settings/settings.html:361 -msgid "Edit Template" -msgstr "" - #: templates/InvenTree/settings/settings.html:237 #: templates/InvenTree/settings/settings.html:362 +msgid "Edit Template" +msgstr "" + +#: templates/InvenTree/settings/settings.html:238 +#: templates/InvenTree/settings/settings.html:363 msgid "Delete Template" msgstr "" -#: templates/InvenTree/settings/settings.html:277 +#: templates/InvenTree/settings/settings.html:278 msgid "Create Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:322 +#: templates/InvenTree/settings/settings.html:323 msgid "Delete Category Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:334 +#: templates/InvenTree/settings/settings.html:335 msgid "No part parameter templates found" msgstr "" -#: templates/InvenTree/settings/settings.html:338 +#: templates/InvenTree/settings/settings.html:339 #: templates/js/translated/news.js:29 #: templates/js/translated/notification.js:36 msgid "ID" msgstr "" -#: templates/InvenTree/settings/settings.html:380 +#: templates/InvenTree/settings/settings.html:381 msgid "Create Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:399 +#: templates/InvenTree/settings/settings.html:400 msgid "Edit Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:413 +#: templates/InvenTree/settings/settings.html:414 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/InvenTree/settings/settings.html:421 +#: templates/InvenTree/settings/settings.html:422 msgid "Delete Part Parameter Template" msgstr "" @@ -7758,12 +7885,12 @@ msgid "Search Settings" msgstr "Cài đặt tìm kiếm" #: templates/InvenTree/settings/sidebar.html:19 -#: templates/InvenTree/settings/sidebar.html:37 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Label Printing" msgstr "" #: templates/InvenTree/settings/sidebar.html:21 -#: templates/InvenTree/settings/sidebar.html:39 +#: templates/InvenTree/settings/sidebar.html:41 msgid "Reporting" msgstr "" @@ -7775,7 +7902,7 @@ msgstr "Cài đặt toàn cục" msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:43 +#: templates/InvenTree/settings/sidebar.html:45 msgid "Categories" msgstr "" @@ -7945,64 +8072,64 @@ msgstr "" msgid "Do you really want to remove the selected email address?" msgstr "" -#: templates/InvenTree/settings/user_display.html:28 +#: templates/InvenTree/settings/user_display.html:29 msgid "Theme Settings" msgstr "Thiết lập giao diện" -#: templates/InvenTree/settings/user_display.html:38 +#: templates/InvenTree/settings/user_display.html:39 msgid "Select theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:49 +#: templates/InvenTree/settings/user_display.html:50 msgid "Set Theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:57 +#: templates/InvenTree/settings/user_display.html:58 msgid "Language Settings" msgstr "Thiết lập ngôn ngữ" -#: templates/InvenTree/settings/user_display.html:66 +#: templates/InvenTree/settings/user_display.html:67 msgid "Select language" msgstr "" -#: templates/InvenTree/settings/user_display.html:82 +#: templates/InvenTree/settings/user_display.html:83 #, python-format msgid "%(lang_translated)s%% translated" msgstr "" -#: templates/InvenTree/settings/user_display.html:84 +#: templates/InvenTree/settings/user_display.html:85 msgid "No translations available" msgstr "" -#: templates/InvenTree/settings/user_display.html:91 +#: templates/InvenTree/settings/user_display.html:92 msgid "Set Language" msgstr "" -#: templates/InvenTree/settings/user_display.html:94 +#: templates/InvenTree/settings/user_display.html:95 msgid "Some languages are not complete" msgstr "" -#: templates/InvenTree/settings/user_display.html:96 +#: templates/InvenTree/settings/user_display.html:97 msgid "Show only sufficent" msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "and hidden." msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "Show them too" msgstr "" -#: templates/InvenTree/settings/user_display.html:105 +#: templates/InvenTree/settings/user_display.html:106 msgid "Help the translation efforts!" msgstr "" -#: templates/InvenTree/settings/user_display.html:106 +#: templates/InvenTree/settings/user_display.html:107 msgid "Native language translation of the web application is community contributed via crowdin. Contributions are welcomed and encouraged." msgstr "" -#: templates/InvenTree/settings/user_display.html:107 +#: templates/InvenTree/settings/user_display.html:108 msgid "InvenTree Translation Project" msgstr "" @@ -8080,7 +8207,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:646 +#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:649 msgid "Confirm" msgstr "" @@ -8313,7 +8440,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 -#: templates/js/translated/part.js:2445 +#: templates/js/translated/part.js:2726 msgid "Minimum Quantity" msgstr "" @@ -8466,7 +8593,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1089 +#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1088 msgid "Remove stock item" msgstr "" @@ -8548,16 +8675,6 @@ msgstr "" msgid "Download BOM Template" msgstr "" -#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 -#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 -msgid "Format" -msgstr "" - -#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 -#: templates/js/translated/order.js:999 -msgid "Select file format" -msgstr "" - #: templates/js/translated/bom.js:320 msgid "Multi Level BOM" msgstr "" @@ -8688,7 +8805,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:1145 templates/js/translated/build.js:1923 -#: templates/js/translated/part.js:790 templates/js/translated/part.js:1572 +#: templates/js/translated/part.js:1061 templates/js/translated/part.js:1843 msgid "Includes variant stock" msgstr "" @@ -8773,13 +8890,13 @@ msgstr "" msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:317 templates/js/translated/stock.js:95 -#: templates/js/translated/stock.js:237 +#: templates/js/translated/build.js:317 templates/js/translated/stock.js:94 +#: templates/js/translated/stock.js:236 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:319 templates/js/translated/stock.js:97 -#: templates/js/translated/stock.js:239 +#: templates/js/translated/build.js:319 templates/js/translated/stock.js:96 +#: templates/js/translated/stock.js:238 msgid "Latest serial number" msgstr "Số seri mới nhất" @@ -8987,9 +9104,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1466 -#: templates/js/translated/part.js:2003 templates/js/translated/stock.js:1725 -#: templates/js/translated/stock.js:2428 +#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1737 +#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1724 +#: templates/js/translated/stock.js:2423 msgid "Select" msgstr "" @@ -9001,7 +9118,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2695 +#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2690 msgid "No user information" msgstr "" @@ -9074,34 +9191,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:652 -#: templates/js/translated/company.js:913 templates/js/translated/part.js:661 -#: templates/js/translated/part.js:747 +#: templates/js/translated/company.js:913 templates/js/translated/part.js:664 +#: templates/js/translated/part.js:1018 msgid "Template part" msgstr "" #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:917 templates/js/translated/part.js:665 -#: templates/js/translated/part.js:751 +#: templates/js/translated/company.js:917 templates/js/translated/part.js:668 +#: templates/js/translated/part.js:1022 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:784 templates/js/translated/part.js:870 +#: templates/js/translated/company.js:784 templates/js/translated/part.js:1141 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:821 templates/js/translated/part.js:912 +#: templates/js/translated/company.js:821 templates/js/translated/part.js:1183 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:822 templates/js/translated/part.js:913 +#: templates/js/translated/company.js:822 templates/js/translated/part.js:1184 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:841 templates/js/translated/part.js:930 +#: templates/js/translated/company.js:841 templates/js/translated/part.js:1201 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:852 templates/js/translated/part.js:942 +#: templates/js/translated/company.js:852 templates/js/translated/part.js:1213 msgid "Delete Parameter" msgstr "" @@ -9181,61 +9298,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:369 templates/js/translated/forms.js:384 -#: templates/js/translated/forms.js:398 templates/js/translated/forms.js:412 +#: templates/js/translated/forms.js:372 templates/js/translated/forms.js:387 +#: templates/js/translated/forms.js:401 templates/js/translated/forms.js:415 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:371 +#: templates/js/translated/forms.js:374 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:386 +#: templates/js/translated/forms.js:389 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:400 +#: templates/js/translated/forms.js:403 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:414 +#: templates/js/translated/forms.js:417 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:672 +#: templates/js/translated/forms.js:675 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:773 +#: templates/js/translated/forms.js:776 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1266 templates/modals.html:19 +#: templates/js/translated/forms.js:1269 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1703 +#: templates/js/translated/forms.js:1706 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1919 templates/search.html:29 +#: templates/js/translated/forms.js:1922 templates/search.html:29 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2172 +#: templates/js/translated/forms.js:2175 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:2640 +#: templates/js/translated/forms.js:2643 msgid "Select Columns" msgstr "" @@ -9256,7 +9373,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1113 +#: templates/js/translated/stock.js:1112 msgid "Select Stock Items" msgstr "" @@ -9590,7 +9707,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2184 +#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2179 msgid "Stock Status" msgstr "" @@ -9614,7 +9731,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1982 templates/js/translated/part.js:983 +#: templates/js/translated/order.js:1982 templates/js/translated/part.js:1254 msgid "No purchase orders found" msgstr "" @@ -9647,8 +9764,8 @@ msgstr "" msgid "Total" msgstr "" -#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1085 -#: templates/js/translated/part.js:1137 +#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1356 +#: templates/js/translated/part.js:1408 msgid "Total Quantity" msgstr "" @@ -9666,11 +9783,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2388 templates/js/translated/order.js:3900 -#: templates/js/translated/part.js:1121 +#: templates/js/translated/part.js:1392 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1166 +#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1437 msgid "Receive line item" msgstr "" @@ -9791,7 +9908,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3623 templates/js/translated/order.js:3712 -#: templates/js/translated/stock.js:1641 +#: templates/js/translated/stock.js:1640 msgid "Shipped to customer" msgstr "" @@ -9835,334 +9952,358 @@ msgstr "" msgid "No matching lines" msgstr "" -#: templates/js/translated/part.js:52 +#: templates/js/translated/part.js:55 msgid "Part Attributes" msgstr "" -#: templates/js/translated/part.js:56 +#: templates/js/translated/part.js:59 msgid "Part Creation Options" msgstr "" -#: templates/js/translated/part.js:60 +#: templates/js/translated/part.js:63 msgid "Part Duplication Options" msgstr "" -#: templates/js/translated/part.js:64 +#: templates/js/translated/part.js:67 msgid "Supplier Options" msgstr "" -#: templates/js/translated/part.js:78 +#: templates/js/translated/part.js:81 msgid "Add Part Category" msgstr "" -#: templates/js/translated/part.js:168 +#: templates/js/translated/part.js:171 msgid "Create Initial Stock" msgstr "" -#: templates/js/translated/part.js:169 +#: templates/js/translated/part.js:172 msgid "Create an initial stock item for this part" msgstr "" -#: templates/js/translated/part.js:176 +#: templates/js/translated/part.js:179 msgid "Initial Stock Quantity" msgstr "" -#: templates/js/translated/part.js:177 +#: templates/js/translated/part.js:180 msgid "Specify initial stock quantity for this part" msgstr "" -#: templates/js/translated/part.js:184 +#: templates/js/translated/part.js:187 msgid "Select destination stock location" msgstr "" -#: templates/js/translated/part.js:202 +#: templates/js/translated/part.js:205 msgid "Copy Category Parameters" msgstr "" -#: templates/js/translated/part.js:203 +#: templates/js/translated/part.js:206 msgid "Copy parameter templates from selected part category" msgstr "" -#: templates/js/translated/part.js:211 +#: templates/js/translated/part.js:214 msgid "Add Supplier Data" msgstr "" -#: templates/js/translated/part.js:212 +#: templates/js/translated/part.js:215 msgid "Create initial supplier data for this part" msgstr "" -#: templates/js/translated/part.js:268 +#: templates/js/translated/part.js:271 msgid "Copy Image" msgstr "" -#: templates/js/translated/part.js:269 +#: templates/js/translated/part.js:272 msgid "Copy image from original part" msgstr "" -#: templates/js/translated/part.js:277 +#: templates/js/translated/part.js:280 msgid "Copy bill of materials from original part" msgstr "" -#: templates/js/translated/part.js:284 +#: templates/js/translated/part.js:287 msgid "Copy Parameters" msgstr "" -#: templates/js/translated/part.js:285 +#: templates/js/translated/part.js:288 msgid "Copy parameter data from original part" msgstr "" -#: templates/js/translated/part.js:298 +#: templates/js/translated/part.js:301 msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:313 templates/js/translated/stock.js:122 +#: templates/js/translated/part.js:316 templates/js/translated/stock.js:121 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:329 +#: templates/js/translated/part.js:332 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:342 +#: templates/js/translated/part.js:345 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:347 +#: templates/js/translated/part.js:350 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:359 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:360 +#: templates/js/translated/part.js:363 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:368 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:394 +#: templates/js/translated/part.js:397 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:396 +#: templates/js/translated/part.js:399 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:407 +#: templates/js/translated/part.js:410 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:459 +#: templates/js/translated/part.js:462 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:460 +#: templates/js/translated/part.js:463 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:477 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:476 +#: templates/js/translated/part.js:479 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:477 +#: templates/js/translated/part.js:480 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:478 +#: templates/js/translated/part.js:481 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:485 +#: templates/js/translated/part.js:488 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:521 +#: templates/js/translated/part.js:524 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:523 +#: templates/js/translated/part.js:526 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:531 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:530 +#: templates/js/translated/part.js:533 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:547 +#: templates/js/translated/part.js:550 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:560 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:560 +#: templates/js/translated/part.js:563 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:585 +#: templates/js/translated/part.js:588 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1554 +#: templates/js/translated/part.js:612 templates/js/translated/part.js:1825 #: templates/js/translated/table_filters.js:488 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:622 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:653 templates/js/translated/part.js:739 +#: templates/js/translated/part.js:656 templates/js/translated/part.js:1010 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:657 templates/js/translated/part.js:743 +#: templates/js/translated/part.js:660 templates/js/translated/part.js:1014 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:669 +#: templates/js/translated/part.js:672 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:673 +#: templates/js/translated/part.js:676 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:815 +#: templates/js/translated/part.js:761 +msgid "Stock item has not been checked recently" +msgstr "" + +#: templates/js/translated/part.js:769 +msgid "Update item" +msgstr "" + +#: templates/js/translated/part.js:770 +msgid "Delete item" +msgstr "" + +#: templates/js/translated/part.js:871 +msgid "No stocktake information available" +msgstr "" + +#: templates/js/translated/part.js:910 templates/js/translated/part.js:933 +msgid "Edit Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:914 templates/js/translated/part.js:945 +msgid "Delete Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:1086 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1236 +#: templates/js/translated/part.js:1507 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1260 +#: templates/js/translated/part.js:1531 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1327 templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1598 templates/js/translated/part.js:1936 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1521 +#: templates/js/translated/part.js:1792 msgid "No category" msgstr "" -#: templates/js/translated/part.js:1552 +#: templates/js/translated/part.js:1823 msgid "No stock" msgstr "" -#: templates/js/translated/part.js:1576 +#: templates/js/translated/part.js:1847 msgid "Allocated to build orders" msgstr "" -#: templates/js/translated/part.js:1580 +#: templates/js/translated/part.js:1851 msgid "Allocated to sales orders" msgstr "" -#: templates/js/translated/part.js:1679 templates/js/translated/part.js:1922 -#: templates/js/translated/stock.js:2387 +#: templates/js/translated/part.js:1960 templates/js/translated/part.js:2203 +#: templates/js/translated/stock.js:2382 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1695 +#: templates/js/translated/part.js:1976 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1761 +#: templates/js/translated/part.js:2042 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1766 +#: templates/js/translated/part.js:2047 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1771 +#: templates/js/translated/part.js:2052 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1784 +#: templates/js/translated/part.js:2065 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1942 templates/js/translated/stock.js:2407 +#: templates/js/translated/part.js:2223 templates/js/translated/stock.js:2402 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2022 +#: templates/js/translated/part.js:2303 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2038 +#: templates/js/translated/part.js:2319 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2383 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2153 templates/js/translated/stock.js:1338 +#: templates/js/translated/part.js:2434 templates/js/translated/stock.js:1337 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2154 templates/js/translated/stock.js:1339 -#: templates/js/translated/stock.js:1599 +#: templates/js/translated/part.js:2435 templates/js/translated/stock.js:1338 +#: templates/js/translated/stock.js:1598 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2441 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2182 +#: templates/js/translated/part.js:2463 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2196 +#: templates/js/translated/part.js:2477 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2277 templates/js/translated/part.js:2278 +#: templates/js/translated/part.js:2558 templates/js/translated/part.js:2559 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2280 +#: templates/js/translated/part.js:2561 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:2286 +#: templates/js/translated/part.js:2567 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:2336 +#: templates/js/translated/part.js:2617 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2623 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:2438 +#: templates/js/translated/part.js:2719 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2454 +#: templates/js/translated/part.js:2735 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:2499 +#: templates/js/translated/part.js:2780 msgid "Minimum Stock Level" msgstr "" @@ -10290,388 +10431,388 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:74 +#: templates/js/translated/stock.js:73 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:104 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:114 +#: templates/js/translated/stock.js:113 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:148 +#: templates/js/translated/stock.js:147 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:163 +#: templates/js/translated/stock.js:162 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:177 +#: templates/js/translated/stock.js:176 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:184 +#: templates/js/translated/stock.js:183 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:193 +#: templates/js/translated/stock.js:192 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:197 +#: templates/js/translated/stock.js:196 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:201 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:256 +#: templates/js/translated/stock.js:255 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:298 +#: templates/js/translated/stock.js:297 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:304 +#: templates/js/translated/stock.js:303 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:368 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:389 +#: templates/js/translated/stock.js:388 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:405 +#: templates/js/translated/stock.js:404 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:410 +#: templates/js/translated/stock.js:409 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:431 +#: templates/js/translated/stock.js:430 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:481 +#: templates/js/translated/stock.js:480 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:494 +#: templates/js/translated/stock.js:493 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:519 +#: templates/js/translated/stock.js:518 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:523 templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:522 templates/js/translated/stock.js:523 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:540 +#: templates/js/translated/stock.js:539 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:560 +#: templates/js/translated/stock.js:559 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:568 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:692 +#: templates/js/translated/stock.js:691 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:693 +#: templates/js/translated/stock.js:692 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:770 +#: templates/js/translated/stock.js:769 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:771 +#: templates/js/translated/stock.js:770 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:773 +#: templates/js/translated/stock.js:772 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:774 +#: templates/js/translated/stock.js:773 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:863 +#: templates/js/translated/stock.js:862 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:864 +#: templates/js/translated/stock.js:863 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:958 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:959 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:966 +#: templates/js/translated/stock.js:965 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:967 +#: templates/js/translated/stock.js:966 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:971 +#: templates/js/translated/stock.js:970 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:972 +#: templates/js/translated/stock.js:971 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:976 +#: templates/js/translated/stock.js:975 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:977 users/models.py:220 +#: templates/js/translated/stock.js:976 users/models.py:221 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:981 +#: templates/js/translated/stock.js:980 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1114 +#: templates/js/translated/stock.js:1113 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1141 +#: templates/js/translated/stock.js:1140 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1277 +#: templates/js/translated/stock.js:1276 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1279 +#: templates/js/translated/stock.js:1278 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1284 +#: templates/js/translated/stock.js:1283 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1331 +#: templates/js/translated/stock.js:1330 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1334 +#: templates/js/translated/stock.js:1333 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1360 +#: templates/js/translated/stock.js:1359 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1417 +#: templates/js/translated/stock.js:1416 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1582 +#: templates/js/translated/stock.js:1581 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1604 +#: templates/js/translated/stock.js:1603 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1633 +#: templates/js/translated/stock.js:1632 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1637 +#: templates/js/translated/stock.js:1636 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1645 +#: templates/js/translated/stock.js:1644 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1651 +#: templates/js/translated/stock.js:1650 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1820 +#: templates/js/translated/stock.js:1815 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1825 +#: templates/js/translated/stock.js:1820 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1828 +#: templates/js/translated/stock.js:1823 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1831 +#: templates/js/translated/stock.js:1826 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1833 +#: templates/js/translated/stock.js:1828 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1835 +#: templates/js/translated/stock.js:1830 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1838 +#: templates/js/translated/stock.js:1833 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1837 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1844 +#: templates/js/translated/stock.js:1839 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1846 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1853 +#: templates/js/translated/stock.js:1848 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1855 +#: templates/js/translated/stock.js:1850 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1859 +#: templates/js/translated/stock.js:1854 #: templates/js/translated/table_filters.js:216 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1989 +#: templates/js/translated/stock.js:1984 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2026 +#: templates/js/translated/stock.js:2021 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2199 +#: templates/js/translated/stock.js:2194 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2213 +#: templates/js/translated/stock.js:2208 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2214 +#: templates/js/translated/stock.js:2209 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2446 +#: templates/js/translated/stock.js:2441 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2536 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2557 +#: templates/js/translated/stock.js:2552 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2579 +#: templates/js/translated/stock.js:2574 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2598 +#: templates/js/translated/stock.js:2593 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2617 +#: templates/js/translated/stock.js:2612 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2635 +#: templates/js/translated/stock.js:2630 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2658 +#: templates/js/translated/stock.js:2653 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2666 +#: templates/js/translated/stock.js:2661 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2737 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2793 templates/js/translated/stock.js:2829 +#: templates/js/translated/stock.js:2788 templates/js/translated/stock.js:2824 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2845 +#: templates/js/translated/stock.js:2840 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2866 +#: templates/js/translated/stock.js:2861 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2867 +#: templates/js/translated/stock.js:2862 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2869 +#: templates/js/translated/stock.js:2864 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2870 +#: templates/js/translated/stock.js:2865 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:2866 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2872 +#: templates/js/translated/stock.js:2867 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2885 +#: templates/js/translated/stock.js:2880 msgid "Select part to install" msgstr "" @@ -10696,7 +10837,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:92 -#: templates/js/translated/table_filters.js:516 +#: templates/js/translated/table_filters.js:520 msgid "Has Pricing" msgstr "" @@ -10912,6 +11053,10 @@ msgstr "" msgid "Purchasable" msgstr "" +#: templates/js/translated/table_filters.js:504 +msgid "Has stocktake entries" +msgstr "" + #: templates/js/translated/tables.js:70 msgid "Display calendar view" msgstr "" @@ -11206,35 +11351,35 @@ msgstr "" msgid "Important dates" msgstr "" -#: users/models.py:207 +#: users/models.py:208 msgid "Permission set" msgstr "" -#: users/models.py:215 +#: users/models.py:216 msgid "Group" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "View" msgstr "" -#: users/models.py:218 +#: users/models.py:219 msgid "Permission to view items" msgstr "" -#: users/models.py:220 +#: users/models.py:221 msgid "Permission to add items" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Change" msgstr "" -#: users/models.py:222 +#: users/models.py:223 msgid "Permissions to edit items" msgstr "" -#: users/models.py:224 +#: users/models.py:225 msgid "Permission to delete items" msgstr "" diff --git a/InvenTree/locale/zh/LC_MESSAGES/django.po b/InvenTree/locale/zh/LC_MESSAGES/django.po index 094fb84d29..2859fc438d 100644 --- a/InvenTree/locale/zh/LC_MESSAGES/django.po +++ b/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: 2022-12-30 20:46+0000\n" -"PO-Revision-Date: 2022-12-31 11:30\n" +"POT-Creation-Date: 2023-01-01 11:05+0000\n" +"PO-Revision-Date: 2023-01-01 11:26\n" "Last-Translator: \n" "Language-Team: Chinese Simplified\n" "Language: zh_CN\n" @@ -34,7 +34,7 @@ msgstr "输入日期" #: company/templates/company/sidebar.html:25 order/models.py:943 #: order/templates/order/po_sidebar.html:11 #: order/templates/order/so_sidebar.html:17 part/admin.py:27 -#: part/templates/part/part_sidebar.html:57 +#: part/models.py:2932 part/templates/part/part_sidebar.html:62 #: report/templates/report/inventree_build_order_base.html:172 #: stock/admin.py:103 stock/models.py:2061 stock/models.py:2169 #: stock/serializers.py:321 stock/serializers.py:454 stock/serializers.py:535 @@ -44,8 +44,8 @@ msgstr "输入日期" #: templates/js/translated/company.js:1023 #: templates/js/translated/order.js:2435 templates/js/translated/order.js:2569 #: templates/js/translated/order.js:3067 templates/js/translated/order.js:4004 -#: templates/js/translated/order.js:4385 templates/js/translated/stock.js:1413 -#: templates/js/translated/stock.js:2020 +#: templates/js/translated/order.js:4385 templates/js/translated/part.js:882 +#: templates/js/translated/stock.js:1412 templates/js/translated/stock.js:2015 msgid "Notes" msgstr "备注" @@ -204,18 +204,18 @@ msgstr "附件" msgid "Select file to attach" msgstr "选择附件" -#: InvenTree/models.py:412 common/models.py:2366 company/models.py:129 +#: InvenTree/models.py:412 common/models.py:2373 company/models.py:129 #: company/models.py:281 company/models.py:516 order/models.py:85 -#: order/models.py:1282 part/admin.py:25 part/models.py:865 +#: order/models.py:1282 part/admin.py:25 part/models.py:866 #: part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: stock/admin.py:102 templates/js/translated/company.js:692 #: templates/js/translated/company.js:1012 -#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1615 +#: templates/js/translated/order.js:3056 templates/js/translated/part.js:1886 msgid "Link" msgstr "链接" -#: InvenTree/models.py:413 build/models.py:290 part/models.py:866 +#: InvenTree/models.py:413 build/models.py:290 part/models.py:867 #: stock/models.py:716 msgid "Link to external URL" msgstr "链接到外部 URL" @@ -229,12 +229,13 @@ msgstr "注释" msgid "File comment" msgstr "文件注释" -#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1810 -#: common/models.py:1811 common/models.py:2034 common/models.py:2035 -#: common/models.py:2296 common/models.py:2297 part/models.py:2948 -#: part/models.py:2968 plugin/models.py:264 plugin/models.py:265 +#: InvenTree/models.py:422 InvenTree/models.py:423 common/models.py:1817 +#: common/models.py:1818 common/models.py:2041 common/models.py:2042 +#: common/models.py:2303 common/models.py:2304 part/models.py:2940 +#: part/models.py:3026 part/models.py:3046 plugin/models.py:264 +#: plugin/models.py:265 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2689 +#: templates/js/translated/stock.js:2684 msgid "User" msgstr "用户" @@ -271,19 +272,20 @@ msgstr "重命名文件出错" msgid "Invalid choice" msgstr "选择无效" -#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2020 -#: company/models.py:363 label/models.py:101 part/models.py:809 -#: part/models.py:3123 plugin/models.py:94 report/models.py:152 +#: InvenTree/models.py:557 InvenTree/models.py:558 common/models.py:2027 +#: company/models.py:363 label/models.py:101 part/models.py:810 +#: part/models.py:3201 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 +#: templates/InvenTree/settings/notifications.html:17 #: templates/InvenTree/settings/plugin.html:60 #: templates/InvenTree/settings/plugin.html:104 #: templates/InvenTree/settings/plugin_settings.html:23 -#: templates/InvenTree/settings/settings.html:344 +#: templates/InvenTree/settings/settings.html:345 #: templates/js/translated/company.js:581 #: templates/js/translated/company.js:794 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:711 templates/js/translated/part.js:880 -#: templates/js/translated/part.js:2010 templates/js/translated/stock.js:2434 +#: templates/js/translated/part.js:982 templates/js/translated/part.js:1151 +#: templates/js/translated/part.js:2291 templates/js/translated/stock.js:2429 msgid "Name" msgstr "名称" @@ -292,24 +294,25 @@ msgstr "名称" #: company/models.py:522 company/templates/company/company_base.html:72 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:108 label/models.py:108 -#: order/models.py:83 part/admin.py:141 part/admin.py:222 part/models.py:832 -#: part/models.py:3132 part/templates/part/category.html:75 +#: order/models.py:83 part/admin.py:174 part/admin.py:255 part/models.py:833 +#: part/models.py:3210 part/templates/part/category.html:75 #: part/templates/part/part_base.html:172 #: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/admin.py:25 stock/templates/stock/location.html:117 +#: templates/InvenTree/settings/notifications.html:19 #: templates/InvenTree/settings/plugin_settings.html:28 -#: templates/InvenTree/settings/settings.html:355 +#: templates/InvenTree/settings/settings.html:356 #: templates/js/translated/bom.js:592 templates/js/translated/bom.js:895 #: templates/js/translated/build.js:2596 templates/js/translated/company.js:445 #: templates/js/translated/company.js:703 #: templates/js/translated/company.js:987 templates/js/translated/order.js:2030 #: templates/js/translated/order.js:2267 templates/js/translated/order.js:2845 -#: templates/js/translated/part.js:773 templates/js/translated/part.js:1223 -#: templates/js/translated/part.js:1497 templates/js/translated/part.js:2046 -#: templates/js/translated/part.js:2121 templates/js/translated/stock.js:1787 -#: templates/js/translated/stock.js:2466 templates/js/translated/stock.js:2526 +#: templates/js/translated/part.js:1044 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1768 templates/js/translated/part.js:2327 +#: templates/js/translated/part.js:2402 templates/js/translated/stock.js:1782 +#: templates/js/translated/stock.js:2461 templates/js/translated/stock.js:2521 msgid "Description" msgstr "描述信息" @@ -322,7 +325,7 @@ msgid "parent" msgstr "上级项" #: InvenTree/models.py:580 InvenTree/models.py:581 -#: templates/js/translated/part.js:2055 templates/js/translated/stock.js:2475 +#: templates/js/translated/part.js:2336 templates/js/translated/stock.js:2470 msgid "Path" msgstr "路径" @@ -354,7 +357,7 @@ msgstr "服务器错误" msgid "An error has been logged by the server." msgstr "服务器记录了一个错误。" -#: InvenTree/serializers.py:58 part/models.py:3468 +#: InvenTree/serializers.py:58 part/models.py:3546 msgid "Must be a valid number" msgstr "必须是有效数字" @@ -421,107 +424,107 @@ msgstr "远程图像文件的 URL" msgid "Downloading images from remote URL is not enabled" msgstr "未启用从远程 URL下载图像" -#: InvenTree/settings.py:639 +#: InvenTree/settings.py:642 msgid "Czech" msgstr "捷克语" -#: InvenTree/settings.py:640 +#: InvenTree/settings.py:643 msgid "Danish" msgstr "丹麦语" -#: InvenTree/settings.py:641 +#: InvenTree/settings.py:644 msgid "German" msgstr "德语" -#: InvenTree/settings.py:642 +#: InvenTree/settings.py:645 msgid "Greek" msgstr "希腊语" -#: InvenTree/settings.py:643 +#: InvenTree/settings.py:646 msgid "English" msgstr "英语" -#: InvenTree/settings.py:644 +#: InvenTree/settings.py:647 msgid "Spanish" msgstr "西班牙语" -#: InvenTree/settings.py:645 +#: InvenTree/settings.py:648 msgid "Spanish (Mexican)" msgstr "西班牙语(墨西哥)" -#: InvenTree/settings.py:646 +#: InvenTree/settings.py:649 msgid "Farsi / Persian" msgstr "波斯语" -#: InvenTree/settings.py:647 +#: InvenTree/settings.py:650 msgid "French" msgstr "法语" -#: InvenTree/settings.py:648 +#: InvenTree/settings.py:651 msgid "Hebrew" msgstr "希伯来语" -#: InvenTree/settings.py:649 +#: InvenTree/settings.py:652 msgid "Hungarian" msgstr "匈牙利语" -#: InvenTree/settings.py:650 +#: InvenTree/settings.py:653 msgid "Italian" msgstr "意大利语" -#: InvenTree/settings.py:651 +#: InvenTree/settings.py:654 msgid "Japanese" msgstr "日语" -#: InvenTree/settings.py:652 +#: InvenTree/settings.py:655 msgid "Korean" msgstr "韩语" -#: InvenTree/settings.py:653 +#: InvenTree/settings.py:656 msgid "Dutch" msgstr "荷兰语" -#: InvenTree/settings.py:654 +#: InvenTree/settings.py:657 msgid "Norwegian" msgstr "挪威语" -#: InvenTree/settings.py:655 +#: InvenTree/settings.py:658 msgid "Polish" msgstr "波兰语" -#: InvenTree/settings.py:656 +#: InvenTree/settings.py:659 msgid "Portuguese" msgstr "葡萄牙语" -#: InvenTree/settings.py:657 +#: InvenTree/settings.py:660 msgid "Portuguese (Brazilian)" msgstr "葡萄牙语 (巴西)" -#: InvenTree/settings.py:658 +#: InvenTree/settings.py:661 msgid "Russian" msgstr "俄语" -#: InvenTree/settings.py:659 +#: InvenTree/settings.py:662 msgid "Slovenian" msgstr "" -#: InvenTree/settings.py:660 +#: InvenTree/settings.py:663 msgid "Swedish" msgstr "瑞典语" -#: InvenTree/settings.py:661 +#: InvenTree/settings.py:664 msgid "Thai" msgstr "泰语" -#: InvenTree/settings.py:662 +#: InvenTree/settings.py:665 msgid "Turkish" msgstr "土耳其语" -#: InvenTree/settings.py:663 +#: InvenTree/settings.py:666 msgid "Vietnamese" msgstr "越南语" -#: InvenTree/settings.py:664 +#: InvenTree/settings.py:667 msgid "Chinese" msgstr "中文(简体)" @@ -652,7 +655,7 @@ msgstr "从父项拆分" msgid "Split child item" msgstr "拆分子项" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2124 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2119 msgid "Merged stock items" msgstr "合并的库存项目" @@ -756,7 +759,7 @@ msgstr "生产订单" #: order/templates/order/so_sidebar.html:13 #: part/templates/part/part_sidebar.html:22 templates/InvenTree/index.html:221 #: templates/InvenTree/search.html:141 -#: templates/InvenTree/settings/sidebar.html:47 +#: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:254 users/models.py:41 msgid "Build Orders" msgstr "生产订单" @@ -766,8 +769,9 @@ msgid "Build Order Reference" msgstr "相关生产订单" #: build/models.py:155 order/models.py:241 order/models.py:651 -#: order/models.py:941 part/admin.py:224 part/models.py:3378 +#: order/models.py:941 part/admin.py:257 part/models.py:3456 #: part/templates/part/upload_bom.html:54 +#: report/templates/report/inventree_bill_of_materials_report.html:139 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 #: templates/js/translated/bom.js:729 templates/js/translated/bom.js:905 @@ -793,13 +797,15 @@ msgstr "此次生产匹配的订单" #: build/models.py:180 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:684 #: order/models.py:1038 order/models.py:1149 order/models.py:1150 -#: part/models.py:381 part/models.py:2781 part/models.py:2894 -#: part/models.py:2909 part/models.py:2928 part/models.py:2946 -#: part/models.py:3045 part/models.py:3166 part/models.py:3258 -#: part/models.py:3343 part/models.py:3659 part/serializers.py:853 -#: part/templates/part/part_app_base.html:8 +#: part/models.py:382 part/models.py:2799 part/models.py:2912 +#: part/models.py:2972 part/models.py:2987 part/models.py:3006 +#: part/models.py:3024 part/models.py:3123 part/models.py:3244 +#: part/models.py:3336 part/models.py:3421 part/models.py:3737 +#: part/serializers.py:894 part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 +#: report/templates/report/inventree_bill_of_materials_report.html:110 +#: report/templates/report/inventree_bill_of_materials_report.html:137 #: report/templates/report/inventree_build_order_base.html:109 #: report/templates/report/inventree_po_report.html:89 #: report/templates/report/inventree_so_report.html:90 stock/serializers.py:90 @@ -819,12 +825,12 @@ msgstr "此次生产匹配的订单" #: templates/js/translated/order.js:1172 templates/js/translated/order.js:1676 #: templates/js/translated/order.js:2252 templates/js/translated/order.js:3199 #: templates/js/translated/order.js:3595 templates/js/translated/order.js:3825 -#: templates/js/translated/part.js:1208 templates/js/translated/part.js:1280 -#: templates/js/translated/part.js:1474 templates/js/translated/pricing.js:102 -#: templates/js/translated/stock.js:618 templates/js/translated/stock.js:783 -#: templates/js/translated/stock.js:993 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2552 templates/js/translated/stock.js:2747 -#: templates/js/translated/stock.js:2884 +#: templates/js/translated/part.js:1479 templates/js/translated/part.js:1551 +#: templates/js/translated/part.js:1745 templates/js/translated/pricing.js:102 +#: templates/js/translated/stock.js:617 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:992 templates/js/translated/stock.js:1738 +#: templates/js/translated/stock.js:2547 templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2879 msgid "Part" msgstr "商品" @@ -890,7 +896,7 @@ msgstr "批量代码" msgid "Batch code for this build output" msgstr "此生产产出的批量代码" -#: build/models.py:252 order/models.py:87 part/models.py:1001 +#: build/models.py:252 order/models.py:87 part/models.py:1002 #: part/templates/part/part_base.html:318 templates/js/translated/order.js:2858 msgid "Creation Date" msgstr "创建日期" @@ -923,7 +929,7 @@ msgstr "发布此生产订单的用户" #: build/models.py:283 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:101 #: order/templates/order/order_base.html:185 -#: order/templates/order/sales_order_base.html:183 part/models.py:1005 +#: order/templates/order/sales_order_base.html:183 part/models.py:1006 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2658 templates/js/translated/order.js:2064 msgid "Responsible" @@ -936,7 +942,7 @@ msgstr "负责此生产订单的用户" #: build/models.py:289 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:188 -#: part/templates/part/part_base.html:376 stock/models.py:714 +#: part/templates/part/part_base.html:390 stock/models.py:714 #: stock/templates/stock/item_base.html:203 msgid "External Link" msgstr "外部链接" @@ -1011,8 +1017,8 @@ msgstr "生产以分配部件" #: templates/js/translated/order.js:107 templates/js/translated/order.js:3200 #: templates/js/translated/order.js:3502 templates/js/translated/order.js:3507 #: templates/js/translated/order.js:3602 templates/js/translated/order.js:3694 -#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 -#: templates/js/translated/stock.js:2625 +#: templates/js/translated/part.js:803 templates/js/translated/stock.js:618 +#: templates/js/translated/stock.js:783 templates/js/translated/stock.js:2620 msgid "Stock Item" msgstr "库存项" @@ -1022,12 +1028,13 @@ msgstr "源库存项" #: build/models.py:1364 build/serializers.py:192 #: build/templates/build/build_base.html:85 -#: build/templates/build/detail.html:34 common/models.py:1842 +#: build/templates/build/detail.html:34 common/models.py:1849 #: order/models.py:934 order/models.py:1460 order/serializers.py:1206 -#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:223 -#: part/forms.py:40 part/models.py:3359 +#: order/templates/order/order_wizard/match_parts.html:30 part/admin.py:256 +#: part/forms.py:40 part/models.py:2919 part/models.py:3437 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 +#: report/templates/report/inventree_bill_of_materials_report.html:138 #: report/templates/report/inventree_build_order_base.html:113 #: report/templates/report/inventree_po_report.html:90 #: report/templates/report/inventree_so_report.html:91 @@ -1049,13 +1056,14 @@ msgstr "源库存项" #: templates/js/translated/order.js:3201 templates/js/translated/order.js:3521 #: templates/js/translated/order.js:3608 templates/js/translated/order.js:3700 #: templates/js/translated/order.js:3847 templates/js/translated/order.js:4338 -#: templates/js/translated/part.js:1078 templates/js/translated/part.js:2568 +#: templates/js/translated/part.js:805 templates/js/translated/part.js:876 +#: templates/js/translated/part.js:1349 templates/js/translated/part.js:2849 #: templates/js/translated/pricing.js:114 #: templates/js/translated/pricing.js:207 #: templates/js/translated/pricing.js:255 -#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:490 -#: templates/js/translated/stock.js:644 templates/js/translated/stock.js:814 -#: templates/js/translated/stock.js:2674 templates/js/translated/stock.js:2759 +#: templates/js/translated/pricing.js:349 templates/js/translated/stock.js:489 +#: templates/js/translated/stock.js:643 templates/js/translated/stock.js:813 +#: templates/js/translated/stock.js:2669 templates/js/translated/stock.js:2754 msgid "Quantity" msgstr "数量" @@ -1097,8 +1105,8 @@ msgid "Enter quantity for build output" msgstr "输入生产产出数量" #: build/serializers.py:207 build/serializers.py:683 order/models.py:327 -#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:645 -#: part/serializers.py:1016 stock/models.py:574 stock/models.py:1312 +#: order/serializers.py:298 order/serializers.py:450 part/serializers.py:686 +#: part/serializers.py:1057 stock/models.py:574 stock/models.py:1312 #: stock/serializers.py:294 msgid "Quantity must be greater than zero" msgstr "数量必须大于0" @@ -1113,7 +1121,7 @@ msgstr "需要整数型数值,因为BOM包含可追踪的部件" #: build/serializers.py:231 order/serializers.py:463 order/serializers.py:1210 #: stock/serializers.py:303 templates/js/translated/order.js:1545 -#: templates/js/translated/stock.js:303 templates/js/translated/stock.js:491 +#: templates/js/translated/stock.js:302 templates/js/translated/stock.js:490 msgid "Serial Numbers" msgstr "序列号" @@ -1146,9 +1154,10 @@ msgstr "必须提供生产产出列表" #: templates/js/translated/build.js:1759 templates/js/translated/order.js:1572 #: templates/js/translated/order.js:3514 templates/js/translated/order.js:3619 #: templates/js/translated/order.js:3627 templates/js/translated/order.js:3708 -#: templates/js/translated/part.js:183 templates/js/translated/stock.js:620 -#: templates/js/translated/stock.js:785 templates/js/translated/stock.js:995 -#: templates/js/translated/stock.js:1895 templates/js/translated/stock.js:2566 +#: templates/js/translated/part.js:186 templates/js/translated/part.js:804 +#: templates/js/translated/stock.js:619 templates/js/translated/stock.js:784 +#: templates/js/translated/stock.js:994 templates/js/translated/stock.js:1890 +#: templates/js/translated/stock.js:2561 msgid "Location" msgstr "地点" @@ -1162,8 +1171,8 @@ msgstr "已完成生产产出的仓储地点" #: stock/templates/stock/item_base.html:421 #: templates/js/translated/barcode.js:237 templates/js/translated/build.js:2630 #: templates/js/translated/order.js:1681 templates/js/translated/order.js:2034 -#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1870 -#: templates/js/translated/stock.js:2643 templates/js/translated/stock.js:2775 +#: templates/js/translated/order.js:2850 templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:2638 templates/js/translated/stock.js:2770 msgid "Status" msgstr "状态" @@ -1239,8 +1248,8 @@ msgstr "所需生产数量尚未完成" msgid "Build order has incomplete outputs" msgstr "生产订单有未完成的产出" -#: build/serializers.py:595 build/serializers.py:640 part/models.py:3495 -#: part/models.py:3651 +#: build/serializers.py:595 build/serializers.py:640 part/models.py:3573 +#: part/models.py:3729 msgid "BOM Item" msgstr "BOM项" @@ -1406,7 +1415,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2670 templates/js/translated/order.js:2051 #: templates/js/translated/order.js:2382 templates/js/translated/order.js:2866 -#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1093 +#: templates/js/translated/order.js:3892 templates/js/translated/part.js:1364 msgid "Target Date" msgstr "预计日期" @@ -1484,8 +1493,8 @@ msgstr "" #: stock/templates/stock/item_base.html:168 #: templates/js/translated/build.js:1250 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1061 templates/js/translated/stock.js:1884 -#: templates/js/translated/stock.js:2782 +#: templates/js/translated/stock.js:1060 templates/js/translated/stock.js:1879 +#: templates/js/translated/stock.js:2777 #: templates/js/translated/table_filters.js:179 #: templates/js/translated/table_filters.js:270 msgid "Batch" @@ -1617,8 +1626,8 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:86 #: order/templates/order/sales_order_detail.html:140 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:210 -#: part/templates/part/part_sidebar.html:55 stock/templates/stock/item.html:117 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:233 +#: part/templates/part/part_sidebar.html:60 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" msgstr "附件" @@ -1635,7 +1644,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:316 +#: build/templates/build/index.html:18 part/templates/part/detail.html:339 msgid "New Build Order" msgstr "新建生产订单" @@ -1928,9 +1937,9 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:1014 part/admin.py:41 part/models.py:3168 +#: common/models.py:1014 part/admin.py:41 part/models.py:3246 #: report/models.py:158 templates/js/translated/table_filters.js:38 -#: templates/js/translated/table_filters.js:504 +#: templates/js/translated/table_filters.js:508 msgid "Template" msgstr "模板" @@ -1938,7 +1947,7 @@ msgstr "模板" msgid "Parts are templates by default" msgstr "" -#: common/models.py:1021 part/admin.py:37 part/admin.py:229 part/models.py:957 +#: common/models.py:1021 part/admin.py:37 part/admin.py:262 part/models.py:958 #: templates/js/translated/bom.js:1595 #: templates/js/translated/table_filters.js:196 #: templates/js/translated/table_filters.js:467 @@ -1949,7 +1958,7 @@ msgstr "组装" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:1028 part/admin.py:38 part/models.py:963 +#: common/models.py:1028 part/admin.py:38 part/models.py:964 #: templates/js/translated/table_filters.js:475 msgid "Component" msgstr "组件" @@ -1958,7 +1967,7 @@ msgstr "组件" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:1035 part/admin.py:39 part/models.py:974 +#: common/models.py:1035 part/admin.py:39 part/models.py:975 msgid "Purchaseable" msgstr "可购买" @@ -1966,7 +1975,7 @@ msgstr "可购买" msgid "Parts are purchaseable by default" msgstr "商品默认可购买" -#: common/models.py:1042 part/admin.py:40 part/models.py:979 +#: common/models.py:1042 part/admin.py:40 part/models.py:980 #: templates/js/translated/table_filters.js:496 msgid "Salable" msgstr "可销售" @@ -1975,10 +1984,10 @@ msgstr "可销售" msgid "Parts are salable by default" msgstr "商品默认可销售" -#: common/models.py:1049 part/admin.py:42 part/models.py:969 +#: common/models.py:1049 part/admin.py:42 part/models.py:970 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:120 -#: templates/js/translated/table_filters.js:508 +#: templates/js/translated/table_filters.js:512 msgid "Trackable" msgstr "可追踪" @@ -1986,10 +1995,10 @@ msgstr "可追踪" msgid "Parts are trackable by default" msgstr "商品默认可跟踪" -#: common/models.py:1056 part/admin.py:43 part/models.py:989 +#: common/models.py:1056 part/admin.py:43 part/models.py:990 #: part/templates/part/part_base.html:156 #: templates/js/translated/table_filters.js:42 -#: templates/js/translated/table_filters.js:512 +#: templates/js/translated/table_filters.js:516 msgid "Virtual" msgstr "虚拟" @@ -2417,7 +2426,7 @@ msgstr "" msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1461 common/models.py:1803 +#: common/models.py:1461 common/models.py:1810 msgid "Settings key (must be unique - case insensitive" msgstr "" @@ -2749,41 +2758,50 @@ msgstr "" msgid "Display part scheduling information" msgstr "" -#: common/models.py:1778 -msgid "Table String Length" +#: common/models.py:1778 part/templates/part/detail.html:61 +#: templates/js/translated/part.js:822 +msgid "Part Stocktake" msgstr "" #: common/models.py:1779 +msgid "Display part stocktake information" +msgstr "" + +#: common/models.py:1785 +msgid "Table String Length" +msgstr "" + +#: common/models.py:1786 msgid "Maximimum length limit for strings displayed in table views" msgstr "" -#: common/models.py:1843 +#: common/models.py:1850 msgid "Price break quantity" msgstr "" -#: common/models.py:1850 company/serializers.py:393 order/models.py:975 -#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1145 +#: common/models.py:1857 company/serializers.py:393 order/models.py:975 +#: templates/js/translated/company.js:1164 templates/js/translated/part.js:1416 #: templates/js/translated/pricing.js:354 msgid "Price" msgstr "价格" -#: common/models.py:1851 +#: common/models.py:1858 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:2011 common/models.py:2189 +#: common/models.py:2018 common/models.py:2196 msgid "Endpoint" msgstr "" -#: common/models.py:2012 +#: common/models.py:2019 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:2021 +#: common/models.py:2028 msgid "Name for this webhook" msgstr "" -#: common/models.py:2026 part/admin.py:36 part/models.py:984 +#: common/models.py:2033 part/admin.py:36 part/models.py:985 #: plugin/models.py:100 templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:116 #: templates/js/translated/table_filters.js:336 @@ -2791,131 +2809,133 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:2027 +#: common/models.py:2034 msgid "Is this webhook active" msgstr "" -#: common/models.py:2041 +#: common/models.py:2048 msgid "Token" msgstr "令牌" -#: common/models.py:2042 +#: common/models.py:2049 msgid "Token for access" msgstr "" -#: common/models.py:2049 +#: common/models.py:2056 msgid "Secret" msgstr "" -#: common/models.py:2050 +#: common/models.py:2057 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:2156 +#: common/models.py:2163 msgid "Message ID" msgstr "" -#: common/models.py:2157 +#: common/models.py:2164 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2165 +#: common/models.py:2172 msgid "Host" msgstr "" -#: common/models.py:2166 +#: common/models.py:2173 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2173 +#: common/models.py:2180 msgid "Header" msgstr "" -#: common/models.py:2174 +#: common/models.py:2181 msgid "Header of this message" msgstr "" -#: common/models.py:2180 +#: common/models.py:2187 msgid "Body" msgstr "" -#: common/models.py:2181 +#: common/models.py:2188 msgid "Body of this message" msgstr "" -#: common/models.py:2190 +#: common/models.py:2197 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2195 +#: common/models.py:2202 msgid "Worked on" msgstr "" -#: common/models.py:2196 +#: common/models.py:2203 msgid "Was the work on this message finished?" msgstr "" -#: common/models.py:2355 +#: common/models.py:2362 msgid "Id" msgstr "" -#: common/models.py:2361 templates/js/translated/news.js:35 +#: common/models.py:2368 templates/js/translated/news.js:35 msgid "Title" msgstr "" -#: common/models.py:2371 templates/js/translated/news.js:51 +#: common/models.py:2378 templates/js/translated/news.js:51 msgid "Published" msgstr "" -#: common/models.py:2376 templates/InvenTree/settings/plugin.html:62 +#: common/models.py:2383 templates/InvenTree/settings/plugin.html:62 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/news.js:47 msgid "Author" msgstr "" -#: common/models.py:2381 templates/js/translated/news.js:43 +#: common/models.py:2388 templates/js/translated/news.js:43 msgid "Summary" msgstr "" -#: common/models.py:2386 +#: common/models.py:2393 msgid "Read" msgstr "" -#: common/models.py:2387 +#: common/models.py:2394 msgid "Was this news item read?" msgstr "" -#: common/notifications.py:293 +#: common/notifications.py:294 #, python-brace-format msgid "New {verbose_name}" msgstr "" -#: common/notifications.py:295 +#: common/notifications.py:296 msgid "A new order has been created and assigned to you" msgstr "" -#: common/notifications.py:301 +#: common/notifications.py:302 msgid "Items Received" msgstr "" -#: common/notifications.py:303 +#: common/notifications.py:304 msgid "Items have been received against a purchase order" msgstr "" -#: common/notifications.py:415 +#: common/notifications.py:416 msgid "Error raised by plugin" msgstr "" #: common/views.py:85 order/templates/order/order_wizard/po_upload.html:51 #: order/templates/order/purchase_order_detail.html:25 order/views.py:102 -#: part/views.py:107 templates/patterns/wizard/upload.html:37 +#: part/templates/part/import_wizard/part_upload.html:58 part/views.py:109 +#: templates/patterns/wizard/upload.html:37 msgid "Upload File" msgstr "上传文件" #: common/views.py:86 order/templates/order/order_wizard/match_fields.html:52 #: order/views.py:103 #: part/templates/part/import_wizard/ajax_match_fields.html:45 -#: part/views.py:108 templates/patterns/wizard/match_fields.html:51 +#: part/templates/part/import_wizard/match_fields.html:52 part/views.py:110 +#: templates/patterns/wizard/match_fields.html:51 msgid "Match Fields" msgstr "匹配字段" @@ -2934,7 +2954,9 @@ msgstr "已导入商品" #: common/views.py:509 order/templates/order/order_wizard/match_fields.html:27 #: order/templates/order/order_wizard/match_parts.html:19 #: order/templates/order/order_wizard/po_upload.html:49 +#: part/templates/part/import_wizard/match_fields.html:27 #: part/templates/part/import_wizard/match_references.html:19 +#: part/templates/part/import_wizard/part_upload.html:56 #: templates/patterns/wizard/match_fields.html:26 #: templates/patterns/wizard/upload.html:35 msgid "Previous Step" @@ -2995,7 +3017,7 @@ msgstr "" msgid "Link to external company information" msgstr "链接到外部公司信息" -#: company/models.py:140 part/models.py:878 +#: company/models.py:140 part/models.py:879 msgid "Image" msgstr "图片" @@ -3028,8 +3050,8 @@ msgid "Does this company manufacture parts?" msgstr "该公司制造商品吗?" #: company/models.py:153 company/serializers.py:399 -#: company/templates/company/company_base.html:107 part/models.py:2762 -#: part/serializers.py:154 part/serializers.py:182 stock/serializers.py:182 +#: company/templates/company/company_base.html:107 part/models.py:2780 +#: part/serializers.py:156 part/serializers.py:184 stock/serializers.py:182 #: templates/InvenTree/settings/pricing.html:64 msgid "Currency" msgstr "货币" @@ -3055,12 +3077,12 @@ msgstr "选择商品" #: templates/js/translated/company.js:433 #: templates/js/translated/company.js:534 #: templates/js/translated/company.js:669 -#: templates/js/translated/company.js:957 templates/js/translated/part.js:238 +#: templates/js/translated/company.js:957 templates/js/translated/part.js:241 #: templates/js/translated/table_filters.js:439 msgid "Manufacturer" msgstr "制造商" -#: company/models.py:269 templates/js/translated/part.js:239 +#: company/models.py:269 templates/js/translated/part.js:242 msgid "Select manufacturer" msgstr "选择制造商" @@ -3070,11 +3092,11 @@ msgstr "选择制造商" #: templates/js/translated/company.js:533 #: templates/js/translated/company.js:685 #: templates/js/translated/company.js:976 templates/js/translated/order.js:2286 -#: templates/js/translated/part.js:249 templates/js/translated/part.js:1067 +#: templates/js/translated/part.js:252 templates/js/translated/part.js:1338 msgid "MPN" msgstr "" -#: company/models.py:276 templates/js/translated/part.js:250 +#: company/models.py:276 templates/js/translated/part.js:253 msgid "Manufacturer Part Number" msgstr "制造商商品编号" @@ -3100,8 +3122,8 @@ msgstr "参数名称" #: company/models.py:370 #: report/templates/report/inventree_test_report_base.html:95 #: stock/models.py:2156 templates/js/translated/company.js:582 -#: templates/js/translated/company.js:800 templates/js/translated/part.js:889 -#: templates/js/translated/stock.js:1399 +#: templates/js/translated/company.js:800 templates/js/translated/part.js:1160 +#: templates/js/translated/stock.js:1398 msgid "Value" msgstr "数值" @@ -3109,10 +3131,10 @@ msgstr "数值" msgid "Parameter value" msgstr "参数值" -#: company/models.py:377 part/admin.py:26 part/models.py:951 -#: part/models.py:3128 part/templates/part/part_base.html:286 -#: templates/InvenTree/settings/settings.html:349 -#: templates/js/translated/company.js:806 templates/js/translated/part.js:895 +#: company/models.py:377 part/admin.py:26 part/models.py:952 +#: part/models.py:3206 part/templates/part/part_base.html:286 +#: templates/InvenTree/settings/settings.html:350 +#: templates/js/translated/company.js:806 templates/js/translated/part.js:1166 msgid "Units" msgstr "单位" @@ -3132,24 +3154,24 @@ msgstr "" #: templates/js/translated/company.js:304 #: templates/js/translated/company.js:437 #: templates/js/translated/company.js:930 templates/js/translated/order.js:2017 -#: templates/js/translated/part.js:219 templates/js/translated/part.js:1035 +#: templates/js/translated/part.js:222 templates/js/translated/part.js:1306 #: templates/js/translated/pricing.js:231 #: templates/js/translated/table_filters.js:443 msgid "Supplier" msgstr "供应商" -#: company/models.py:498 templates/js/translated/part.js:220 +#: company/models.py:498 templates/js/translated/part.js:223 msgid "Select supplier" msgstr "选择供应商" #: company/models.py:503 company/templates/company/supplier_part.html:146 #: part/bom.py:253 part/bom.py:281 templates/js/translated/company.js:303 -#: templates/js/translated/order.js:2273 templates/js/translated/part.js:230 -#: templates/js/translated/part.js:1053 templates/js/translated/pricing.js:243 +#: templates/js/translated/order.js:2273 templates/js/translated/part.js:233 +#: templates/js/translated/part.js:1324 templates/js/translated/pricing.js:243 msgid "SKU" msgstr "" -#: company/models.py:504 templates/js/translated/part.js:231 +#: company/models.py:504 templates/js/translated/part.js:234 msgid "Supplier stock keeping unit" msgstr "" @@ -3166,24 +3188,25 @@ msgid "Supplier part description" msgstr "供应商商品描述" #: company/models.py:528 company/templates/company/supplier_part.html:181 -#: part/admin.py:225 part/models.py:3381 part/templates/part/upload_bom.html:59 +#: part/admin.py:258 part/models.py:3459 part/templates/part/upload_bom.html:59 +#: report/templates/report/inventree_bill_of_materials_report.html:140 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:397 msgid "Note" msgstr "备注" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "base cost" msgstr "" -#: company/models.py:532 part/models.py:1861 +#: company/models.py:532 part/models.py:1867 msgid "Minimum charge (e.g. stocking fee)" msgstr "最低收费(例如库存费)" #: company/models.py:534 company/templates/company/supplier_part.html:167 #: stock/admin.py:101 stock/models.py:682 #: stock/templates/stock/item_base.html:243 -#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2016 +#: templates/js/translated/company.js:992 templates/js/translated/stock.js:2011 msgid "Packaging" msgstr "打包" @@ -3196,7 +3219,7 @@ msgstr "商品打包" #: templates/js/translated/company.js:997 templates/js/translated/order.js:826 #: templates/js/translated/order.js:1253 templates/js/translated/order.js:1508 #: templates/js/translated/order.js:2317 templates/js/translated/order.js:2334 -#: templates/js/translated/part.js:1085 templates/js/translated/part.js:1137 +#: templates/js/translated/part.js:1356 templates/js/translated/part.js:1408 msgid "Pack Quantity" msgstr "" @@ -3204,7 +3227,7 @@ msgstr "" msgid "Unit quantity supplied in a single pack" msgstr "" -#: company/models.py:544 part/models.py:1863 +#: company/models.py:544 part/models.py:1869 msgid "multiple" msgstr "" @@ -3216,8 +3239,8 @@ msgstr "" #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:1118 templates/js/translated/build.js:1883 -#: templates/js/translated/build.js:2770 templates/js/translated/part.js:623 -#: templates/js/translated/part.js:626 +#: templates/js/translated/build.js:2770 templates/js/translated/part.js:626 +#: templates/js/translated/part.js:629 #: templates/js/translated/table_filters.js:206 msgid "Available" msgstr "空闲" @@ -3300,7 +3323,7 @@ msgstr "" #: stock/templates/stock/item_base.html:399 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:429 templates/js/translated/order.js:2827 -#: templates/js/translated/stock.js:2607 +#: templates/js/translated/stock.js:2602 #: templates/js/translated/table_filters.js:447 msgid "Customer" msgstr "客户" @@ -3314,7 +3337,7 @@ msgid "Phone" msgstr "电话" #: company/templates/company/company_base.html:206 -#: part/templates/part/part_base.html:511 +#: part/templates/part/part_base.html:525 msgid "Remove Image" msgstr "" @@ -3323,19 +3346,19 @@ msgid "Remove associated image from this company" msgstr "" #: company/templates/company/company_base.html:209 -#: part/templates/part/part_base.html:514 +#: part/templates/part/part_base.html:528 #: templates/InvenTree/settings/user.html:87 #: templates/InvenTree/settings/user.html:149 msgid "Remove" msgstr "" #: company/templates/company/company_base.html:238 -#: part/templates/part/part_base.html:543 +#: part/templates/part/part_base.html:557 msgid "Upload Image" msgstr "上传图片" #: company/templates/company/company_base.html:253 -#: part/templates/part/part_base.html:598 +#: part/templates/part/part_base.html:612 msgid "Download Image" msgstr "下载图片" @@ -3351,7 +3374,7 @@ msgstr "创建新的供应商商品" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:357 +#: part/templates/part/detail.html:380 msgid "New Supplier Part" msgstr "新建供应商商品" @@ -3380,7 +3403,7 @@ msgstr "制造商商品" msgid "Create new manufacturer part" msgstr "新建制造商商品" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:387 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:410 msgid "New Manufacturer Part" msgstr "新建制造商商品" @@ -3394,9 +3417,9 @@ msgstr "供货商库存" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:35 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:35 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:200 -#: templates/InvenTree/settings/sidebar.html:49 +#: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:293 templates/navbar.html:50 #: users/models.py:42 msgid "Purchase Orders" @@ -3417,9 +3440,9 @@ msgstr "新建采购订单" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:39 +#: part/templates/part/detail.html:130 part/templates/part/part_sidebar.html:39 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:220 -#: templates/InvenTree/settings/sidebar.html:51 +#: templates/InvenTree/settings/sidebar.html:53 #: templates/js/translated/search.js:317 templates/navbar.html:61 #: users/models.py:43 msgid "Sales Orders" @@ -3451,7 +3474,7 @@ msgstr "制造商" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:221 -#: part/templates/part/detail.html:87 part/templates/part/part_base.html:85 +#: part/templates/part/detail.html:110 part/templates/part/part_base.html:85 msgid "Order part" msgstr "订购商品" @@ -3482,28 +3505,28 @@ msgid "Suppliers" msgstr "供应商" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:368 +#: part/templates/part/detail.html:391 msgid "Delete supplier parts" msgstr "删除供应商商品" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:369 part/templates/part/detail.html:399 -#: templates/js/translated/forms.js:455 templates/js/translated/helpers.js:38 -#: templates/js/translated/part.js:351 templates/js/translated/stock.js:188 -#: users/models.py:224 +#: part/templates/part/detail.html:392 part/templates/part/detail.html:422 +#: templates/js/translated/forms.js:458 templates/js/translated/helpers.js:38 +#: templates/js/translated/part.js:354 templates/js/translated/stock.js:187 +#: users/models.py:225 msgid "Delete" msgstr "删除" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:184 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:207 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "参数" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:189 +#: part/templates/part/detail.html:212 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:62 msgid "New Parameter" @@ -3514,7 +3537,7 @@ msgid "Delete parameters" msgstr "删除参数" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:825 +#: part/templates/part/detail.html:865 msgid "Add Parameter" msgstr "添加参数" @@ -3538,7 +3561,7 @@ msgstr "" #: company/templates/company/supplier_part.html:24 stock/models.py:665 #: stock/templates/stock/item_base.html:236 #: templates/js/translated/company.js:946 templates/js/translated/order.js:1173 -#: templates/js/translated/stock.js:1974 +#: templates/js/translated/stock.js:1969 msgid "Supplier Part" msgstr "供应商商品" @@ -3578,7 +3601,7 @@ msgstr "" #: company/templates/company/supplier_part.html:56 #: company/templates/company/supplier_part.html:57 #: company/templates/company/supplier_part.html:222 -#: part/templates/part/detail.html:88 +#: part/templates/part/detail.html:111 msgid "Order Part" msgstr "订购商品" @@ -3630,7 +3653,7 @@ msgstr "" #: company/templates/company/supplier_part.html:204 #: part/templates/part/detail.html:25 stock/templates/stock/location.html:198 -#: templates/js/translated/stock.js:467 +#: templates/js/translated/stock.js:466 msgid "New Stock Item" msgstr "" @@ -3662,10 +3685,10 @@ msgstr "" #: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:153 -#: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/part.js:777 templates/js/translated/part.js:1378 -#: templates/js/translated/part.js:1534 templates/js/translated/stock.js:994 -#: templates/js/translated/stock.js:1799 templates/navbar.html:31 +#: templates/InvenTree/settings/sidebar.html:47 +#: templates/js/translated/part.js:1048 templates/js/translated/part.js:1649 +#: templates/js/translated/part.js:1805 templates/js/translated/stock.js:993 +#: templates/js/translated/stock.js:1794 templates/navbar.html:31 msgid "Stock" msgstr "库存" @@ -3680,7 +3703,7 @@ msgstr "供应商商品价格" #: company/templates/company/supplier_part_navbar.html:29 #: part/templates/part/part_sidebar.html:30 -#: templates/InvenTree/settings/sidebar.html:35 +#: templates/InvenTree/settings/sidebar.html:37 msgid "Pricing" msgstr "定价" @@ -3692,7 +3715,7 @@ msgstr "定价" #: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:155 templates/js/translated/search.js:225 -#: templates/js/translated/stock.js:2484 users/models.py:40 +#: templates/js/translated/stock.js:2479 users/models.py:40 msgid "Stock Items" msgstr "库存项" @@ -3801,9 +3824,9 @@ msgstr "" #: stock/templates/stock/item_base.html:182 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:619 templates/js/translated/order.js:1174 -#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1012 -#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1954 -#: templates/js/translated/stock.js:2588 +#: templates/js/translated/order.js:2001 templates/js/translated/part.js:1283 +#: templates/js/translated/pricing.js:515 templates/js/translated/stock.js:1949 +#: templates/js/translated/stock.js:2583 msgid "Purchase Order" msgstr "" @@ -3973,7 +3996,7 @@ msgstr "供应商商品" #: order/models.py:1046 order/templates/order/order_base.html:178 #: templates/js/translated/order.js:1679 templates/js/translated/order.js:2404 -#: templates/js/translated/part.js:1129 templates/js/translated/part.js:1161 +#: templates/js/translated/part.js:1400 templates/js/translated/part.js:1432 #: templates/js/translated/table_filters.js:358 msgid "Received" msgstr "" @@ -3984,7 +4007,7 @@ msgstr "" #: order/models.py:1054 stock/models.py:800 stock/serializers.py:173 #: stock/templates/stock/item_base.html:189 -#: templates/js/translated/stock.js:2005 +#: templates/js/translated/stock.js:2000 msgid "Purchase Price" msgstr "采购价格" @@ -4350,18 +4373,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:9 #: part/templates/part/import_wizard/ajax_match_fields.html:9 +#: part/templates/part/import_wizard/match_fields.html:9 #: templates/patterns/wizard/match_fields.html:8 msgid "Missing selections for the following required columns" msgstr "" #: order/templates/order/order_wizard/match_fields.html:20 #: part/templates/part/import_wizard/ajax_match_fields.html:20 +#: part/templates/part/import_wizard/match_fields.html:20 #: templates/patterns/wizard/match_fields.html:19 msgid "Duplicate selections found, see below. Fix them then retry submitting." msgstr "" #: order/templates/order/order_wizard/match_fields.html:29 #: order/templates/order/order_wizard/match_parts.html:21 +#: part/templates/part/import_wizard/match_fields.html:29 #: part/templates/part/import_wizard/match_references.html:21 #: templates/patterns/wizard/match_fields.html:28 msgid "Submit Selections" @@ -4369,18 +4395,21 @@ msgstr "" #: order/templates/order/order_wizard/match_fields.html:35 #: part/templates/part/import_wizard/ajax_match_fields.html:28 +#: part/templates/part/import_wizard/match_fields.html:35 #: templates/patterns/wizard/match_fields.html:34 msgid "File Fields" msgstr "文件字段" #: order/templates/order/order_wizard/match_fields.html:42 #: part/templates/part/import_wizard/ajax_match_fields.html:35 +#: part/templates/part/import_wizard/match_fields.html:42 #: templates/patterns/wizard/match_fields.html:41 msgid "Remove column" msgstr "移除列" #: order/templates/order/order_wizard/match_fields.html:60 #: part/templates/part/import_wizard/ajax_match_fields.html:53 +#: part/templates/part/import_wizard/match_fields.html:60 #: templates/patterns/wizard/match_fields.html:59 msgid "Duplicate selection" msgstr "" @@ -4389,12 +4418,13 @@ msgstr "" #: order/templates/order/order_wizard/match_parts.html:52 #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: 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:102 templates/js/translated/build.js:485 #: templates/js/translated/build.js:641 templates/js/translated/build.js:2088 #: templates/js/translated/order.js:1122 templates/js/translated/order.js:1624 -#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:657 -#: templates/js/translated/stock.js:825 +#: templates/js/translated/order.js:3111 templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:824 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "移除行" @@ -4429,6 +4459,7 @@ msgstr "" #: order/templates/order/order_wizard/po_upload.html:27 #: part/templates/part/import_wizard/ajax_part_upload.html:10 +#: part/templates/part/import_wizard/part_upload.html:26 #: templates/patterns/wizard/upload.html:13 #, python-format msgid "Step %(step)s of %(count)s" @@ -4567,12 +4598,12 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/admin.py:19 part/admin.py:219 part/models.py:3262 stock/admin.py:84 +#: part/admin.py:19 part/admin.py:252 part/models.py:3340 stock/admin.py:84 #: templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "商品ID" -#: part/admin.py:20 part/admin.py:221 part/models.py:3266 stock/admin.py:85 +#: part/admin.py:20 part/admin.py:254 part/models.py:3344 stock/admin.py:85 msgid "Part Name" msgstr "" @@ -4580,32 +4611,32 @@ msgstr "" msgid "Part Description" msgstr "" -#: part/admin.py:22 part/models.py:852 part/templates/part/part_base.html:272 -#: templates/js/translated/part.js:763 templates/js/translated/part.js:1491 -#: templates/js/translated/stock.js:1765 +#: part/admin.py:22 part/models.py:853 part/templates/part/part_base.html:272 +#: templates/js/translated/part.js:1034 templates/js/translated/part.js:1762 +#: templates/js/translated/stock.js:1760 msgid "IPN" msgstr "" -#: part/admin.py:23 part/models.py:860 part/templates/part/part_base.html:279 -#: report/models.py:171 templates/js/translated/part.js:768 +#: part/admin.py:23 part/models.py:861 part/templates/part/part_base.html:279 +#: report/models.py:171 templates/js/translated/part.js:1039 msgid "Revision" msgstr "" -#: part/admin.py:24 part/admin.py:145 part/models.py:838 +#: part/admin.py:24 part/admin.py:178 part/models.py:839 #: part/templates/part/category.html:87 part/templates/part/part_base.html:300 msgid "Keywords" msgstr "关键词" -#: part/admin.py:28 part/admin.py:139 +#: part/admin.py:28 part/admin.py:172 #: templates/js/translated/model_renderers.js:338 msgid "Category ID" msgstr "类别 ID" -#: part/admin.py:29 part/admin.py:140 +#: part/admin.py:29 part/admin.py:173 msgid "Category Name" msgstr "" -#: part/admin.py:30 part/admin.py:144 +#: part/admin.py:30 part/admin.py:177 msgid "Default Location ID" msgstr "" @@ -4613,7 +4644,7 @@ msgstr "" msgid "Default Supplier ID" msgstr "" -#: part/admin.py:33 part/models.py:944 part/templates/part/part_base.html:206 +#: part/admin.py:33 part/models.py:945 part/templates/part/part_base.html:206 msgid "Minimum Stock" msgstr "最低库存" @@ -4625,8 +4656,8 @@ msgstr "" #: part/admin.py:48 part/bom.py:145 part/templates/part/part_base.html:213 #: templates/js/translated/bom.js:1156 templates/js/translated/build.js:1935 -#: templates/js/translated/part.js:613 templates/js/translated/part.js:633 -#: templates/js/translated/part.js:1381 templates/js/translated/part.js:1559 +#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 +#: templates/js/translated/part.js:1652 templates/js/translated/part.js:1830 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4642,115 +4673,115 @@ msgid "Allocated" msgstr "" #: part/admin.py:51 part/templates/part/part_base.html:244 -#: templates/js/translated/part.js:616 templates/js/translated/part.js:636 -#: templates/js/translated/part.js:1385 templates/js/translated/part.js:1566 +#: templates/js/translated/part.js:619 templates/js/translated/part.js:639 +#: templates/js/translated/part.js:1656 templates/js/translated/part.js:1837 msgid "Building" msgstr "" -#: part/admin.py:52 part/models.py:2846 +#: part/admin.py:52 part/models.py:2864 msgid "Minimum Cost" msgstr "" -#: part/admin.py:53 part/models.py:2852 +#: part/admin.py:53 part/models.py:2870 msgid "Maximum Cost" msgstr "" -#: part/admin.py:142 part/admin.py:216 stock/admin.py:26 stock/admin.py:98 +#: part/admin.py:175 part/admin.py:249 stock/admin.py:26 stock/admin.py:98 msgid "Parent ID" msgstr "" -#: part/admin.py:143 part/admin.py:218 stock/admin.py:27 +#: part/admin.py:176 part/admin.py:251 stock/admin.py:27 msgid "Parent Name" msgstr "" -#: part/admin.py:146 part/templates/part/category.html:81 +#: part/admin.py:179 part/templates/part/category.html:81 #: part/templates/part/category.html:94 msgid "Category Path" msgstr "类别路径" -#: part/admin.py:149 part/models.py:382 part/templates/part/cat_link.html:3 +#: part/admin.py:182 part/models.py:383 part/templates/part/cat_link.html:3 #: part/templates/part/category.html:23 part/templates/part/category.html:134 #: part/templates/part/category.html:154 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:84 -#: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:2065 templates/js/translated/search.js:146 +#: templates/InvenTree/settings/sidebar.html:43 +#: templates/js/translated/part.js:2346 templates/js/translated/search.js:146 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "商品" -#: part/admin.py:211 +#: part/admin.py:244 msgid "BOM Level" msgstr "" -#: part/admin.py:213 +#: part/admin.py:246 msgid "BOM Item ID" msgstr "" -#: part/admin.py:217 +#: part/admin.py:250 msgid "Parent IPN" msgstr "" -#: part/admin.py:220 part/models.py:3270 +#: part/admin.py:253 part/models.py:3348 msgid "Part IPN" msgstr "" -#: part/admin.py:226 templates/js/translated/pricing.js:91 +#: part/admin.py:259 templates/js/translated/pricing.js:91 #: templates/js/translated/pricing.js:732 msgid "Minimum Price" msgstr "" -#: part/admin.py:227 templates/js/translated/pricing.js:86 +#: part/admin.py:260 templates/js/translated/pricing.js:86 #: templates/js/translated/pricing.js:740 msgid "Maximum Price" msgstr "" -#: part/api.py:536 +#: part/api.py:538 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:556 +#: part/api.py:558 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:574 +#: part/api.py:576 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:660 +#: part/api.py:662 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:818 +#: part/api.py:820 msgid "Valid" msgstr "" -#: part/api.py:819 +#: part/api.py:821 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:825 +#: part/api.py:827 msgid "This option must be selected" msgstr "" -#: part/api.py:1265 +#: part/api.py:1281 msgid "Must be greater than zero" msgstr "必须大于0" -#: part/api.py:1269 +#: part/api.py:1285 msgid "Must be a valid quantity" msgstr "必须是有效的数量" -#: part/api.py:1284 +#: part/api.py:1300 msgid "Specify location for initial part stock" msgstr "指定初始初始商品仓储地点" -#: part/api.py:1315 part/api.py:1319 part/api.py:1334 part/api.py:1338 +#: part/api.py:1331 part/api.py:1335 part/api.py:1350 part/api.py:1354 msgid "This field is required" msgstr "此字段为必填" -#: part/bom.py:142 part/models.py:116 part/models.py:887 -#: part/templates/part/category.html:109 part/templates/part/part_base.html:360 +#: part/bom.py:142 part/models.py:116 part/models.py:888 +#: part/templates/part/category.html:109 part/templates/part/part_base.html:374 msgid "Default Location" msgstr "默认仓储地点" @@ -4801,7 +4832,7 @@ msgstr "" msgid "You cannot make this part category structural because some parts are already assigned to it!" msgstr "" -#: part/models.py:159 part/models.py:3211 part/templates/part/category.html:16 +#: part/models.py:159 part/models.py:3289 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "商品类别" @@ -4812,423 +4843,459 @@ msgstr "商品类别" msgid "Part Categories" msgstr "商品类别" -#: part/models.py:468 +#: part/models.py:469 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:538 part/models.py:550 +#: part/models.py:539 part/models.py:551 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:640 +#: part/models.py:641 msgid "Stock item with this serial number already exists" msgstr "" -#: part/models.py:771 +#: part/models.py:772 msgid "Duplicate IPN not allowed in part settings" msgstr "在商品设置中不允许重复的IPN" -#: part/models.py:776 +#: part/models.py:777 msgid "Part with this Name, IPN and Revision already exists." msgstr "" -#: part/models.py:790 +#: part/models.py:791 msgid "Parts cannot be assigned to structural part categories!" msgstr "" -#: part/models.py:808 part/models.py:3267 +#: part/models.py:809 part/models.py:3345 msgid "Part name" msgstr "商品名称" -#: part/models.py:815 +#: part/models.py:816 msgid "Is Template" msgstr "" -#: part/models.py:816 +#: part/models.py:817 msgid "Is this part a template part?" msgstr "" -#: part/models.py:826 +#: part/models.py:827 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:827 +#: part/models.py:828 msgid "Variant Of" msgstr "" -#: part/models.py:833 +#: part/models.py:834 msgid "Part description" msgstr "商品描述" -#: part/models.py:839 +#: part/models.py:840 msgid "Part keywords to improve visibility in search results" msgstr "提高搜索结果可见性的关键字" -#: part/models.py:846 part/models.py:2966 part/models.py:3210 +#: part/models.py:847 part/models.py:3044 part/models.py:3288 #: part/templates/part/part_base.html:263 -#: templates/InvenTree/settings/settings.html:229 +#: templates/InvenTree/settings/settings.html:230 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1513 templates/js/translated/part.js:1770 +#: templates/js/translated/part.js:1784 templates/js/translated/part.js:2051 msgid "Category" msgstr "类别" -#: part/models.py:847 +#: part/models.py:848 msgid "Part category" msgstr "商品类别" -#: part/models.py:853 +#: part/models.py:854 msgid "Internal Part Number" msgstr "内部商品编号" -#: part/models.py:859 +#: part/models.py:860 msgid "Part revision or version number" msgstr "商品版本号" -#: part/models.py:885 +#: part/models.py:886 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:930 part/templates/part/part_base.html:369 +#: part/models.py:931 part/templates/part/part_base.html:383 msgid "Default Supplier" msgstr "" -#: part/models.py:931 +#: part/models.py:932 msgid "Default supplier part" msgstr "默认供应商商品" -#: part/models.py:938 +#: part/models.py:939 msgid "Default Expiry" msgstr "" -#: part/models.py:939 +#: part/models.py:940 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:945 +#: part/models.py:946 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:952 +#: part/models.py:953 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:958 +#: part/models.py:959 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:964 +#: part/models.py:965 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:970 +#: part/models.py:971 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:975 +#: part/models.py:976 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:980 +#: part/models.py:981 msgid "Can this part be sold to customers?" msgstr "此商品可以销售给客户吗?" -#: part/models.py:985 +#: part/models.py:986 msgid "Is this part active?" msgstr "" -#: part/models.py:990 +#: part/models.py:991 msgid "Is this a virtual part, such as a software product or license?" msgstr "这是一个虚拟商品,如软件产品或许可证吗?" -#: part/models.py:992 +#: part/models.py:993 msgid "Part notes" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "BOM checksum" msgstr "" -#: part/models.py:994 +#: part/models.py:995 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:997 +#: part/models.py:998 msgid "BOM checked by" msgstr "" -#: part/models.py:999 +#: part/models.py:1000 msgid "BOM checked date" msgstr "" -#: part/models.py:1003 +#: part/models.py:1004 msgid "Creation User" msgstr "新建用户" -#: part/models.py:1863 +#: part/models.py:1010 part/templates/part/part_base.html:345 +#: stock/templates/stock/item_base.html:445 +#: templates/js/translated/part.js:1901 +msgid "Last Stocktake" +msgstr "" + +#: part/models.py:1869 msgid "Sell multiple" msgstr "" -#: part/models.py:2763 +#: part/models.py:2781 msgid "Currency used to cache pricing calculations" msgstr "" -#: part/models.py:2768 +#: part/models.py:2786 templates/js/translated/part.js:806 msgid "Updated" msgstr "" -#: part/models.py:2769 +#: part/models.py:2787 msgid "Timestamp of last pricing update" msgstr "" -#: part/models.py:2786 +#: part/models.py:2804 msgid "Minimum BOM Cost" msgstr "" -#: part/models.py:2787 +#: part/models.py:2805 msgid "Minimum cost of component parts" msgstr "" -#: part/models.py:2792 +#: part/models.py:2810 msgid "Maximum BOM Cost" msgstr "" -#: part/models.py:2793 +#: part/models.py:2811 msgid "Maximum cost of component parts" msgstr "" -#: part/models.py:2798 +#: part/models.py:2816 msgid "Minimum Purchase Cost" msgstr "" -#: part/models.py:2799 +#: part/models.py:2817 msgid "Minimum historical purchase cost" msgstr "" -#: part/models.py:2804 +#: part/models.py:2822 msgid "Maximum Purchase Cost" msgstr "" -#: part/models.py:2805 +#: part/models.py:2823 msgid "Maximum historical purchase cost" msgstr "" -#: part/models.py:2810 +#: part/models.py:2828 msgid "Minimum Internal Price" msgstr "" -#: part/models.py:2811 +#: part/models.py:2829 msgid "Minimum cost based on internal price breaks" msgstr "" -#: part/models.py:2816 +#: part/models.py:2834 msgid "Maximum Internal Price" msgstr "" -#: part/models.py:2817 +#: part/models.py:2835 msgid "Maximum cost based on internal price breaks" msgstr "" -#: part/models.py:2822 +#: part/models.py:2840 msgid "Minimum Supplier Price" msgstr "" -#: part/models.py:2823 +#: part/models.py:2841 msgid "Minimum price of part from external suppliers" msgstr "" -#: part/models.py:2828 +#: part/models.py:2846 msgid "Maximum Supplier Price" msgstr "" -#: part/models.py:2829 +#: part/models.py:2847 msgid "Maximum price of part from external suppliers" msgstr "" -#: part/models.py:2834 +#: part/models.py:2852 msgid "Minimum Variant Cost" msgstr "" -#: part/models.py:2835 +#: part/models.py:2853 msgid "Calculated minimum cost of variant parts" msgstr "" -#: part/models.py:2840 +#: part/models.py:2858 msgid "Maximum Variant Cost" msgstr "" -#: part/models.py:2841 +#: part/models.py:2859 msgid "Calculated maximum cost of variant parts" msgstr "" -#: part/models.py:2847 +#: part/models.py:2865 msgid "Calculated overall minimum cost" msgstr "" -#: part/models.py:2853 +#: part/models.py:2871 msgid "Calculated overall maximum cost" msgstr "" -#: part/models.py:2858 +#: part/models.py:2876 msgid "Minimum Sale Price" msgstr "" -#: part/models.py:2859 +#: part/models.py:2877 msgid "Minimum sale price based on price breaks" msgstr "" -#: part/models.py:2864 +#: part/models.py:2882 msgid "Maximum Sale Price" msgstr "" -#: part/models.py:2865 +#: part/models.py:2883 msgid "Maximum sale price based on price breaks" msgstr "" -#: part/models.py:2870 +#: part/models.py:2888 msgid "Minimum Sale Cost" msgstr "" -#: part/models.py:2871 +#: part/models.py:2889 msgid "Minimum historical sale price" msgstr "" -#: part/models.py:2876 +#: part/models.py:2894 msgid "Maximum Sale Cost" msgstr "" -#: part/models.py:2877 +#: part/models.py:2895 msgid "Maximum historical sale price" msgstr "" -#: part/models.py:3013 +#: part/models.py:2913 +msgid "Part for stocktake" +msgstr "" + +#: part/models.py:2920 +msgid "Total available stock at time of stocktake" +msgstr "" + +#: part/models.py:2924 part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:63 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:2043 templates/js/translated/part.js:887 +#: templates/js/translated/pricing.js:537 +#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2511 +msgid "Date" +msgstr "" + +#: part/models.py:2925 +msgid "Date stocktake was performed" +msgstr "" + +#: part/models.py:2933 +msgid "Additional notes" +msgstr "" + +#: part/models.py:2941 +msgid "User who performed this stocktake" +msgstr "" + +#: part/models.py:3091 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:3030 +#: part/models.py:3108 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:3050 templates/js/translated/part.js:2116 -#: templates/js/translated/stock.js:1379 +#: part/models.py:3128 templates/js/translated/part.js:2397 +#: templates/js/translated/stock.js:1378 msgid "Test Name" msgstr "" -#: part/models.py:3051 +#: part/models.py:3129 msgid "Enter a name for the test" msgstr "" -#: part/models.py:3056 +#: part/models.py:3134 msgid "Test Description" msgstr "" -#: part/models.py:3057 +#: part/models.py:3135 msgid "Enter description for this test" msgstr "" -#: part/models.py:3062 templates/js/translated/part.js:2125 +#: part/models.py:3140 templates/js/translated/part.js:2406 #: templates/js/translated/table_filters.js:322 msgid "Required" msgstr "" -#: part/models.py:3063 +#: part/models.py:3141 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:3068 templates/js/translated/part.js:2133 +#: part/models.py:3146 templates/js/translated/part.js:2414 msgid "Requires Value" msgstr "" -#: part/models.py:3069 +#: part/models.py:3147 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:3074 templates/js/translated/part.js:2140 +#: part/models.py:3152 templates/js/translated/part.js:2421 msgid "Requires Attachment" msgstr "" -#: part/models.py:3075 +#: part/models.py:3153 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:3116 +#: part/models.py:3194 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:3124 +#: part/models.py:3202 msgid "Parameter Name" msgstr "" -#: part/models.py:3128 +#: part/models.py:3206 msgid "Parameter Units" msgstr "" -#: part/models.py:3133 +#: part/models.py:3211 msgid "Parameter description" msgstr "" -#: part/models.py:3166 +#: part/models.py:3244 msgid "Parent Part" msgstr "" -#: part/models.py:3168 part/models.py:3216 part/models.py:3217 -#: templates/InvenTree/settings/settings.html:224 +#: part/models.py:3246 part/models.py:3294 part/models.py:3295 +#: templates/InvenTree/settings/settings.html:225 msgid "Parameter Template" msgstr "参数模板" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Data" msgstr "" -#: part/models.py:3170 +#: part/models.py:3248 msgid "Parameter Value" msgstr "" -#: part/models.py:3221 templates/InvenTree/settings/settings.html:233 +#: part/models.py:3299 templates/InvenTree/settings/settings.html:234 msgid "Default Value" msgstr "默认值" -#: part/models.py:3222 +#: part/models.py:3300 msgid "Default Parameter Value" msgstr "" -#: part/models.py:3259 +#: part/models.py:3337 msgid "Part ID or part name" msgstr "" -#: part/models.py:3263 +#: part/models.py:3341 msgid "Unique part ID value" msgstr "" -#: part/models.py:3271 +#: part/models.py:3349 msgid "Part IPN value" msgstr "" -#: part/models.py:3274 +#: part/models.py:3352 msgid "Level" msgstr "" -#: part/models.py:3275 +#: part/models.py:3353 msgid "BOM level" msgstr "" -#: part/models.py:3344 +#: part/models.py:3422 msgid "Select parent part" msgstr "" -#: part/models.py:3352 +#: part/models.py:3430 msgid "Sub part" msgstr "" -#: part/models.py:3353 +#: part/models.py:3431 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:3359 +#: part/models.py:3437 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:3363 part/templates/part/upload_bom.html:58 +#: part/models.py:3441 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:933 templates/js/translated/bom.js:986 #: templates/js/translated/build.js:1868 #: templates/js/translated/table_filters.js:84 @@ -5236,189 +5303,189 @@ msgstr "" msgid "Optional" msgstr "可选项" -#: part/models.py:3364 +#: part/models.py:3442 msgid "This BOM item is optional" msgstr "" -#: part/models.py:3369 templates/js/translated/bom.js:929 +#: part/models.py:3447 templates/js/translated/bom.js:929 #: templates/js/translated/bom.js:995 templates/js/translated/build.js:1859 #: templates/js/translated/table_filters.js:88 msgid "Consumable" msgstr "" -#: part/models.py:3370 +#: part/models.py:3448 msgid "This BOM item is consumable (it is not tracked in build orders)" msgstr "" -#: part/models.py:3374 part/templates/part/upload_bom.html:55 +#: part/models.py:3452 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:3375 +#: part/models.py:3453 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:3378 +#: part/models.py:3456 msgid "BOM item reference" msgstr "" -#: part/models.py:3381 +#: part/models.py:3459 msgid "BOM item notes" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "Checksum" msgstr "" -#: part/models.py:3383 +#: part/models.py:3461 msgid "BOM line checksum" msgstr "" -#: part/models.py:3387 part/templates/part/upload_bom.html:57 +#: part/models.py:3465 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1012 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:108 msgid "Inherited" msgstr "继承项" -#: part/models.py:3388 +#: part/models.py:3466 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:3393 part/templates/part/upload_bom.html:56 +#: part/models.py:3471 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1004 msgid "Allow Variants" msgstr "" -#: part/models.py:3394 +#: part/models.py:3472 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:3480 stock/models.py:558 +#: part/models.py:3558 stock/models.py:558 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:3489 part/models.py:3491 +#: part/models.py:3567 part/models.py:3569 msgid "Sub part must be specified" msgstr "" -#: part/models.py:3618 +#: part/models.py:3696 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:3639 +#: part/models.py:3717 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:3652 +#: part/models.py:3730 msgid "Parent BOM item" msgstr "" -#: part/models.py:3660 +#: part/models.py:3738 msgid "Substitute part" msgstr "" -#: part/models.py:3675 +#: part/models.py:3753 msgid "Part 1" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Part 2" msgstr "" -#: part/models.py:3679 +#: part/models.py:3757 msgid "Select Related Part" msgstr "" -#: part/models.py:3697 +#: part/models.py:3775 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:3701 +#: part/models.py:3779 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:155 part/serializers.py:183 stock/serializers.py:183 +#: part/serializers.py:157 part/serializers.py:185 stock/serializers.py:183 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:543 +#: part/serializers.py:584 msgid "Update" msgstr "" -#: part/serializers.py:544 +#: part/serializers.py:585 msgid "Update pricing for this part" msgstr "" -#: part/serializers.py:854 +#: part/serializers.py:895 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:862 +#: part/serializers.py:903 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:863 +#: part/serializers.py:904 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:868 +#: part/serializers.py:909 msgid "Include Inherited" msgstr "" -#: part/serializers.py:869 +#: part/serializers.py:910 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:874 +#: part/serializers.py:915 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:875 +#: part/serializers.py:916 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:921 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:881 +#: part/serializers.py:922 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:921 +#: part/serializers.py:962 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:922 +#: part/serializers.py:963 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:952 +#: part/serializers.py:993 msgid "No part column specified" msgstr "" -#: part/serializers.py:995 +#: part/serializers.py:1036 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:998 +#: part/serializers.py:1039 msgid "No matching part found" msgstr "" -#: part/serializers.py:1001 +#: part/serializers.py:1042 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:1010 +#: part/serializers.py:1051 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:1018 +#: part/serializers.py:1059 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:1039 +#: part/serializers.py:1080 msgid "At least one BOM item is required" msgstr "" @@ -5450,7 +5517,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:267 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:290 msgid "BOM actions" msgstr "" @@ -5507,8 +5574,8 @@ msgstr "新建商品" msgid "New Part" msgstr "新商品" -#: part/templates/part/category.html:169 part/templates/part/detail.html:366 -#: part/templates/part/detail.html:397 +#: part/templates/part/category.html:169 part/templates/part/detail.html:389 +#: part/templates/part/detail.html:420 msgid "Options" msgstr "选项" @@ -5556,7 +5623,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:404 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:407 msgid "Duplicate Part" msgstr "复制部件" @@ -5593,118 +5660,128 @@ msgstr "" msgid "Refresh" msgstr "" -#: part/templates/part/detail.html:59 +#: part/templates/part/detail.html:65 +msgid "Add stocktake information" +msgstr "" + +#: part/templates/part/detail.html:66 part/templates/part/part_sidebar.html:49 +#: stock/admin.py:107 templates/js/translated/stock.js:1905 +msgid "Stocktake" +msgstr "" + +#: part/templates/part/detail.html:82 msgid "Part Test Templates" msgstr "" -#: part/templates/part/detail.html:64 +#: part/templates/part/detail.html:87 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:144 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:141 +#: part/templates/part/detail.html:164 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:156 +#: part/templates/part/detail.html:179 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:160 +#: part/templates/part/detail.html:183 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:161 +#: part/templates/part/detail.html:184 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:188 +#: part/templates/part/detail.html:211 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:225 part/templates/part/part_sidebar.html:52 +#: part/templates/part/detail.html:248 part/templates/part/part_sidebar.html:57 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:229 part/templates/part/detail.html:230 +#: part/templates/part/detail.html:252 part/templates/part/detail.html:253 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:250 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:273 part/templates/part/part_sidebar.html:17 +#: report/templates/report/inventree_bill_of_materials_report.html:100 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:255 +#: part/templates/part/detail.html:278 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:259 templates/js/translated/bom.js:309 +#: part/templates/part/detail.html:282 templates/js/translated/bom.js:309 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:261 +#: part/templates/part/detail.html:284 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:271 +#: part/templates/part/detail.html:294 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:272 templates/js/translated/part.js:276 +#: part/templates/part/detail.html:295 templates/js/translated/part.js:279 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:273 +#: part/templates/part/detail.html:296 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:278 part/templates/part/detail.html:279 +#: part/templates/part/detail.html:301 part/templates/part/detail.html:302 #: templates/js/translated/bom.js:1268 templates/js/translated/bom.js:1269 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:292 +#: part/templates/part/detail.html:315 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:310 +#: part/templates/part/detail.html:333 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:337 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:360 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:353 +#: part/templates/part/detail.html:376 msgid "Part Suppliers" msgstr "商品供应商" -#: part/templates/part/detail.html:383 +#: part/templates/part/detail.html:406 msgid "Part Manufacturers" msgstr "商品制造商" -#: part/templates/part/detail.html:399 +#: part/templates/part/detail.html:422 msgid "Delete manufacturer parts" msgstr "删除制造商商品" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:696 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:704 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:796 msgid "Add Test Result Template" msgstr "" #: part/templates/part/import_wizard/ajax_part_upload.html:29 #: part/templates/part/import_wizard/part_upload.html:14 -msgid "Unsuffitient privileges." +msgid "Insufficient privileges." msgstr "" #: part/templates/part/import_wizard/part_upload.html:8 @@ -5715,6 +5792,34 @@ msgstr "" msgid "Import Parts from File" msgstr "从文件导入商品" +#: part/templates/part/import_wizard/part_upload.html:31 +msgid "Requirements for part import" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "The part import file must contain the required named columns as provided in the " +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:33 +msgid "Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:89 +msgid "Download Part Import Template" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:92 +#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 +#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 +msgid "Format" +msgstr "" + +#: part/templates/part/import_wizard/part_upload.html:93 +#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 +#: templates/js/translated/order.js:999 +msgid "Select file format" +msgstr "" + #: part/templates/part/part_app_base.html:12 msgid "Part List" msgstr "商品列表" @@ -5804,12 +5909,12 @@ msgstr "商品是虚拟的(不是实体零件)" #: templates/js/translated/company.js:660 #: templates/js/translated/company.js:921 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:677 templates/js/translated/part.js:755 +#: templates/js/translated/part.js:680 templates/js/translated/part.js:1026 msgid "Inactive" msgstr "" #: part/templates/part/part_base.html:165 -#: part/templates/part/part_base.html:666 +#: part/templates/part/part_base.html:680 msgid "Show Part Details" msgstr "" @@ -5837,38 +5942,38 @@ msgid "Minimum stock level" msgstr "" #: part/templates/part/part_base.html:330 templates/js/translated/bom.js:1032 -#: templates/js/translated/part.js:798 templates/js/translated/part.js:1604 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:1875 #: templates/js/translated/pricing.js:124 #: templates/js/translated/pricing.js:762 msgid "Price Range" msgstr "" -#: part/templates/part/part_base.html:345 +#: part/templates/part/part_base.html:359 msgid "Latest Serial Number" msgstr "" -#: part/templates/part/part_base.html:349 +#: part/templates/part/part_base.html:363 #: stock/templates/stock/item_base.html:331 msgid "Search for serial number" msgstr "" -#: part/templates/part/part_base.html:449 +#: part/templates/part/part_base.html:463 msgid "Link Barcode to Part" msgstr "" -#: part/templates/part/part_base.html:495 +#: part/templates/part/part_base.html:509 msgid "Calculate" msgstr "" -#: part/templates/part/part_base.html:512 +#: part/templates/part/part_base.html:526 msgid "Remove associated image from this part" msgstr "" -#: part/templates/part/part_base.html:564 +#: part/templates/part/part_base.html:578 msgid "No matching images found" msgstr "" -#: part/templates/part/part_base.html:660 +#: part/templates/part/part_base.html:674 msgid "Hide Part Details" msgstr "" @@ -5920,15 +6025,6 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "此商品无价格信息可用。" -#: part/templates/part/part_scheduling.html:13 -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:63 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:2043 templates/js/translated/pricing.js:537 -#: templates/js/translated/pricing.js:658 templates/js/translated/stock.js:2516 -msgid "Date" -msgstr "" - #: part/templates/part/part_scheduling.html:14 msgid "Scheduled Quantity" msgstr "" @@ -5941,7 +6037,7 @@ msgstr "" msgid "Scheduling" msgstr "" -#: part/templates/part/part_sidebar.html:48 +#: part/templates/part/part_sidebar.html:53 msgid "Test Templates" msgstr "" @@ -5960,7 +6056,7 @@ msgstr "" #: part/templates/part/prices.html:25 stock/admin.py:106 #: stock/templates/stock/item_base.html:440 #: templates/js/translated/company.js:1039 -#: templates/js/translated/stock.js:1940 +#: templates/js/translated/stock.js:1935 msgid "Last Updated" msgstr "" @@ -6023,8 +6119,8 @@ msgstr "" msgid "Add Sell Price Break" msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:639 -#: templates/js/translated/part.js:1373 templates/js/translated/part.js:1375 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:1644 templates/js/translated/part.js:1646 msgid "No Stock" msgstr "" @@ -6087,27 +6183,32 @@ msgstr "" msgid "{title} v{version}" msgstr "" -#: part/views.py:109 +#: part/views.py:111 msgid "Match References" msgstr "" -#: part/views.py:354 +#: part/views.py:239 +#, python-brace-format +msgid "Can't import part {name} because there is no category assigned" +msgstr "" + +#: part/views.py:378 msgid "Part QR Code" msgstr "商品二维码" -#: part/views.py:372 +#: part/views.py:396 msgid "Select Part Image" msgstr "选择商品图像" -#: part/views.py:398 +#: part/views.py:422 msgid "Updated part image" msgstr "更新商品图像" -#: part/views.py:401 +#: part/views.py:425 msgid "Part image not found" msgstr "未找到商品图像" -#: part/views.py:493 +#: part/views.py:517 msgid "Part Pricing" msgstr "商品价格" @@ -6156,28 +6257,48 @@ msgid "Provides native support for barcodes" msgstr "" #: plugin/builtin/barcodes/inventree_barcode.py:29 -#: plugin/builtin/integration/core_notifications.py:31 +#: plugin/builtin/integration/core_notifications.py:33 msgid "InvenTree contributors" msgstr "" -#: plugin/builtin/integration/core_notifications.py:30 +#: plugin/builtin/integration/core_notifications.py:32 msgid "InvenTree Notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:32 +#: plugin/builtin/integration/core_notifications.py:34 msgid "Integrated outgoing notificaton methods" msgstr "" -#: plugin/builtin/integration/core_notifications.py:37 -#: plugin/builtin/integration/core_notifications.py:56 +#: plugin/builtin/integration/core_notifications.py:39 +#: plugin/builtin/integration/core_notifications.py:80 msgid "Enable email notifications" msgstr "" -#: plugin/builtin/integration/core_notifications.py:38 -#: plugin/builtin/integration/core_notifications.py:57 +#: plugin/builtin/integration/core_notifications.py:40 +#: plugin/builtin/integration/core_notifications.py:81 msgid "Allow sending of emails for event notifications" msgstr "" +#: plugin/builtin/integration/core_notifications.py:45 +msgid "Enable slack notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:46 +msgid "Allow sending of slack channel messages for event notifications" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:51 +msgid "Slack incoming webhook url" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:52 +msgid "URL that is used to send messages to a slack channel" +msgstr "" + +#: plugin/builtin/integration/core_notifications.py:162 +msgid "Open link" +msgstr "" + #: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" @@ -6409,6 +6530,10 @@ msgstr "" msgid "Asset file description" msgstr "" +#: report/templates/report/inventree_bill_of_materials_report.html:133 +msgid "Materials needed" +msgstr "" + #: report/templates/report/inventree_build_order_base.html:146 msgid "Required For" msgstr "" @@ -6427,7 +6552,7 @@ msgstr "" #: templates/js/translated/build.js:1244 templates/js/translated/build.js:1745 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:121 templates/js/translated/order.js:3611 -#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:522 +#: templates/js/translated/order.js:3698 templates/js/translated/stock.js:521 msgid "Serial Number" msgstr "序列号" @@ -6459,8 +6584,9 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: stock/admin.py:87 templates/js/translated/stock.js:642 -#: templates/js/translated/stock.js:812 templates/js/translated/stock.js:2765 +#: stock/admin.py:87 templates/js/translated/part.js:749 +#: templates/js/translated/stock.js:641 templates/js/translated/stock.js:811 +#: templates/js/translated/stock.js:2760 msgid "Serial" msgstr "" @@ -6515,13 +6641,9 @@ msgstr "" msgid "Purchase Order ID" msgstr "" -#: stock/admin.py:107 templates/js/translated/stock.js:1910 -msgid "Stocktake" -msgstr "" - #: stock/admin.py:108 stock/models.py:764 #: stock/templates/stock/item_base.html:427 -#: templates/js/translated/stock.js:1924 +#: templates/js/translated/stock.js:1919 msgid "Expiry Date" msgstr "" @@ -6936,7 +7058,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2912 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2907 msgid "Install Stock Item" msgstr "" @@ -6944,7 +7066,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1561 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1560 msgid "Add Test Result" msgstr "" @@ -7117,10 +7239,6 @@ msgstr "" msgid "Stale" msgstr "" -#: stock/templates/stock/item_base.html:445 -msgid "Last Stocktake" -msgstr "" - #: stock/templates/stock/item_base.html:449 msgid "No stocktake performed" msgstr "" @@ -7394,7 +7512,8 @@ msgstr "" #: templates/InvenTree/notifications/notifications.html:10 #: templates/InvenTree/notifications/sidebar.html:5 -#: templates/InvenTree/settings/sidebar.html:17 templates/notifications.html:5 +#: templates/InvenTree/settings/sidebar.html:17 +#: templates/InvenTree/settings/sidebar.html:35 templates/notifications.html:5 msgid "Notifications" msgstr "" @@ -7475,6 +7594,14 @@ msgstr "" msgid "Open in new tab" msgstr "" +#: templates/InvenTree/settings/notifications.html:9 +msgid "Global Notification Settings" +msgstr "" + +#: templates/InvenTree/settings/notifications.html:18 +msgid "Slug" +msgstr "" + #: templates/InvenTree/settings/part.html:7 msgid "Part Settings" msgstr "商品设置" @@ -7492,7 +7619,7 @@ msgid "Part Parameter Templates" msgstr "商品参数模板" #: templates/InvenTree/settings/plugin.html:10 -#: templates/InvenTree/settings/sidebar.html:55 +#: templates/InvenTree/settings/sidebar.html:57 msgid "Plugin Settings" msgstr "" @@ -7501,7 +7628,7 @@ msgid "Changing the settings below require you to immediately restart the server msgstr "" #: templates/InvenTree/settings/plugin.html:38 -#: templates/InvenTree/settings/sidebar.html:57 +#: templates/InvenTree/settings/sidebar.html:59 msgid "Plugins" msgstr "" @@ -7669,67 +7796,67 @@ msgstr "未设置值" msgid "Edit setting" msgstr "编辑设置" -#: templates/InvenTree/settings/settings.html:117 +#: templates/InvenTree/settings/settings.html:118 msgid "Edit Plugin Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:119 +#: templates/InvenTree/settings/settings.html:120 msgid "Edit Notification Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:122 +#: templates/InvenTree/settings/settings.html:123 msgid "Edit Global Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:124 +#: templates/InvenTree/settings/settings.html:125 msgid "Edit User Setting" msgstr "" -#: templates/InvenTree/settings/settings.html:214 +#: templates/InvenTree/settings/settings.html:215 msgid "No category parameter templates found" msgstr "未找到类别参数模板" -#: templates/InvenTree/settings/settings.html:236 -#: templates/InvenTree/settings/settings.html:361 +#: templates/InvenTree/settings/settings.html:237 +#: templates/InvenTree/settings/settings.html:362 msgid "Edit Template" msgstr "编辑模板" -#: templates/InvenTree/settings/settings.html:237 -#: templates/InvenTree/settings/settings.html:362 +#: templates/InvenTree/settings/settings.html:238 +#: templates/InvenTree/settings/settings.html:363 msgid "Delete Template" msgstr "删除模板" -#: templates/InvenTree/settings/settings.html:277 +#: templates/InvenTree/settings/settings.html:278 msgid "Create Category Parameter Template" msgstr "创建类别参数模板" -#: templates/InvenTree/settings/settings.html:322 +#: templates/InvenTree/settings/settings.html:323 msgid "Delete Category Parameter Template" msgstr "删除类别参数模板" -#: templates/InvenTree/settings/settings.html:334 +#: templates/InvenTree/settings/settings.html:335 msgid "No part parameter templates found" msgstr "未找到商品参数模板" -#: templates/InvenTree/settings/settings.html:338 +#: templates/InvenTree/settings/settings.html:339 #: templates/js/translated/news.js:29 #: templates/js/translated/notification.js:36 msgid "ID" msgstr "" -#: templates/InvenTree/settings/settings.html:380 +#: templates/InvenTree/settings/settings.html:381 msgid "Create Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:399 +#: templates/InvenTree/settings/settings.html:400 msgid "Edit Part Parameter Template" msgstr "" -#: templates/InvenTree/settings/settings.html:413 +#: templates/InvenTree/settings/settings.html:414 msgid "Any parameters which reference this template will also be deleted" msgstr "" -#: templates/InvenTree/settings/settings.html:421 +#: templates/InvenTree/settings/settings.html:422 msgid "Delete Part Parameter Template" msgstr "" @@ -7758,12 +7885,12 @@ msgid "Search Settings" msgstr "搜索设置" #: templates/InvenTree/settings/sidebar.html:19 -#: templates/InvenTree/settings/sidebar.html:37 +#: templates/InvenTree/settings/sidebar.html:39 msgid "Label Printing" msgstr "" #: templates/InvenTree/settings/sidebar.html:21 -#: templates/InvenTree/settings/sidebar.html:39 +#: templates/InvenTree/settings/sidebar.html:41 msgid "Reporting" msgstr "" @@ -7775,7 +7902,7 @@ msgstr "" msgid "Server Configuration" msgstr "" -#: templates/InvenTree/settings/sidebar.html:43 +#: templates/InvenTree/settings/sidebar.html:45 msgid "Categories" msgstr "" @@ -7945,64 +8072,64 @@ msgstr "" msgid "Do you really want to remove the selected email address?" msgstr "" -#: templates/InvenTree/settings/user_display.html:28 +#: templates/InvenTree/settings/user_display.html:29 msgid "Theme Settings" msgstr "主题设置" -#: templates/InvenTree/settings/user_display.html:38 +#: templates/InvenTree/settings/user_display.html:39 msgid "Select theme" msgstr "" -#: templates/InvenTree/settings/user_display.html:49 +#: templates/InvenTree/settings/user_display.html:50 msgid "Set Theme" msgstr "设置主题" -#: templates/InvenTree/settings/user_display.html:57 +#: templates/InvenTree/settings/user_display.html:58 msgid "Language Settings" msgstr "语言设置" -#: templates/InvenTree/settings/user_display.html:66 +#: templates/InvenTree/settings/user_display.html:67 msgid "Select language" msgstr "" -#: templates/InvenTree/settings/user_display.html:82 +#: templates/InvenTree/settings/user_display.html:83 #, python-format msgid "%(lang_translated)s%% translated" msgstr "%(lang_translated)s%% 已翻译" -#: templates/InvenTree/settings/user_display.html:84 +#: templates/InvenTree/settings/user_display.html:85 msgid "No translations available" msgstr "无可用翻译" -#: templates/InvenTree/settings/user_display.html:91 +#: templates/InvenTree/settings/user_display.html:92 msgid "Set Language" msgstr "设置语言" -#: templates/InvenTree/settings/user_display.html:94 +#: templates/InvenTree/settings/user_display.html:95 msgid "Some languages are not complete" msgstr "" -#: templates/InvenTree/settings/user_display.html:96 +#: templates/InvenTree/settings/user_display.html:97 msgid "Show only sufficent" msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "and hidden." msgstr "" -#: templates/InvenTree/settings/user_display.html:98 +#: templates/InvenTree/settings/user_display.html:99 msgid "Show them too" msgstr "" -#: templates/InvenTree/settings/user_display.html:105 +#: templates/InvenTree/settings/user_display.html:106 msgid "Help the translation efforts!" msgstr "帮助翻译工作!" -#: templates/InvenTree/settings/user_display.html:106 +#: templates/InvenTree/settings/user_display.html:107 msgid "Native language translation of the web application is community contributed via crowdin. Contributions are welcomed and encouraged." msgstr "" -#: templates/InvenTree/settings/user_display.html:107 +#: templates/InvenTree/settings/user_display.html:108 msgid "InvenTree Translation Project" msgstr "" @@ -8080,7 +8207,7 @@ msgstr "" msgid "Please confirm that %(email)s is an email address for user %(user_display)s." msgstr "" -#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:646 +#: templates/account/email_confirm.html:22 templates/js/translated/forms.js:649 msgid "Confirm" msgstr "确认" @@ -8313,7 +8440,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 -#: templates/js/translated/part.js:2445 +#: templates/js/translated/part.js:2726 msgid "Minimum Quantity" msgstr "" @@ -8466,7 +8593,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1089 +#: templates/js/translated/barcode.js:524 templates/js/translated/stock.js:1088 msgid "Remove stock item" msgstr "" @@ -8548,16 +8675,6 @@ msgstr "" msgid "Download BOM Template" msgstr "" -#: templates/js/translated/bom.js:278 templates/js/translated/bom.js:312 -#: templates/js/translated/order.js:998 templates/js/translated/tables.js:145 -msgid "Format" -msgstr "" - -#: templates/js/translated/bom.js:279 templates/js/translated/bom.js:313 -#: templates/js/translated/order.js:999 -msgid "Select file format" -msgstr "" - #: templates/js/translated/bom.js:320 msgid "Multi Level BOM" msgstr "" @@ -8688,7 +8805,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:1145 templates/js/translated/build.js:1923 -#: templates/js/translated/part.js:790 templates/js/translated/part.js:1572 +#: templates/js/translated/part.js:1061 templates/js/translated/part.js:1843 msgid "Includes variant stock" msgstr "" @@ -8773,13 +8890,13 @@ msgstr "生产订单未完成" msgid "Complete Build Order" msgstr "生产订单完成" -#: templates/js/translated/build.js:317 templates/js/translated/stock.js:95 -#: templates/js/translated/stock.js:237 +#: templates/js/translated/build.js:317 templates/js/translated/stock.js:94 +#: templates/js/translated/stock.js:236 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:319 templates/js/translated/stock.js:97 -#: templates/js/translated/stock.js:239 +#: templates/js/translated/build.js:319 templates/js/translated/stock.js:96 +#: templates/js/translated/stock.js:238 msgid "Latest serial number" msgstr "" @@ -8987,9 +9104,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1466 -#: templates/js/translated/part.js:2003 templates/js/translated/stock.js:1725 -#: templates/js/translated/stock.js:2428 +#: templates/js/translated/build.js:2574 templates/js/translated/part.js:1737 +#: templates/js/translated/part.js:2284 templates/js/translated/stock.js:1724 +#: templates/js/translated/stock.js:2423 msgid "Select" msgstr "" @@ -9001,7 +9118,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2695 +#: templates/js/translated/build.js:2652 templates/js/translated/stock.js:2690 msgid "No user information" msgstr "没有用户信息" @@ -9074,34 +9191,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:652 -#: templates/js/translated/company.js:913 templates/js/translated/part.js:661 -#: templates/js/translated/part.js:747 +#: templates/js/translated/company.js:913 templates/js/translated/part.js:664 +#: templates/js/translated/part.js:1018 msgid "Template part" msgstr "" #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:917 templates/js/translated/part.js:665 -#: templates/js/translated/part.js:751 +#: templates/js/translated/company.js:917 templates/js/translated/part.js:668 +#: templates/js/translated/part.js:1022 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:784 templates/js/translated/part.js:870 +#: templates/js/translated/company.js:784 templates/js/translated/part.js:1141 msgid "No parameters found" msgstr "无指定参数" -#: templates/js/translated/company.js:821 templates/js/translated/part.js:912 +#: templates/js/translated/company.js:821 templates/js/translated/part.js:1183 msgid "Edit parameter" msgstr "编辑参数" -#: templates/js/translated/company.js:822 templates/js/translated/part.js:913 +#: templates/js/translated/company.js:822 templates/js/translated/part.js:1184 msgid "Delete parameter" msgstr "删除参数" -#: templates/js/translated/company.js:841 templates/js/translated/part.js:930 +#: templates/js/translated/company.js:841 templates/js/translated/part.js:1201 msgid "Edit Parameter" msgstr "编辑参数" -#: templates/js/translated/company.js:852 templates/js/translated/part.js:942 +#: templates/js/translated/company.js:852 templates/js/translated/part.js:1213 msgid "Delete Parameter" msgstr "删除参数" @@ -9181,61 +9298,61 @@ msgstr "" msgid "Create filter" msgstr "" -#: templates/js/translated/forms.js:369 templates/js/translated/forms.js:384 -#: templates/js/translated/forms.js:398 templates/js/translated/forms.js:412 +#: templates/js/translated/forms.js:372 templates/js/translated/forms.js:387 +#: templates/js/translated/forms.js:401 templates/js/translated/forms.js:415 msgid "Action Prohibited" msgstr "" -#: templates/js/translated/forms.js:371 +#: templates/js/translated/forms.js:374 msgid "Create operation not allowed" msgstr "" -#: templates/js/translated/forms.js:386 +#: templates/js/translated/forms.js:389 msgid "Update operation not allowed" msgstr "" -#: templates/js/translated/forms.js:400 +#: templates/js/translated/forms.js:403 msgid "Delete operation not allowed" msgstr "" -#: templates/js/translated/forms.js:414 +#: templates/js/translated/forms.js:417 msgid "View operation not allowed" msgstr "" -#: templates/js/translated/forms.js:672 +#: templates/js/translated/forms.js:675 msgid "Keep this form open" msgstr "" -#: templates/js/translated/forms.js:773 +#: templates/js/translated/forms.js:776 msgid "Enter a valid number" msgstr "" -#: templates/js/translated/forms.js:1266 templates/modals.html:19 +#: templates/js/translated/forms.js:1269 templates/modals.html:19 #: templates/modals.html:43 msgid "Form errors exist" msgstr "" -#: templates/js/translated/forms.js:1703 +#: templates/js/translated/forms.js:1706 msgid "No results found" msgstr "" -#: templates/js/translated/forms.js:1919 templates/search.html:29 +#: templates/js/translated/forms.js:1922 templates/search.html:29 msgid "Searching" msgstr "" -#: templates/js/translated/forms.js:2172 +#: templates/js/translated/forms.js:2175 msgid "Clear input" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "File Column" msgstr "" -#: templates/js/translated/forms.js:2628 +#: templates/js/translated/forms.js:2631 msgid "Field Name" msgstr "" -#: templates/js/translated/forms.js:2640 +#: templates/js/translated/forms.js:2643 msgid "Select Columns" msgstr "" @@ -9256,7 +9373,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1113 +#: templates/js/translated/stock.js:1112 msgid "Select Stock Items" msgstr "选择库存项" @@ -9590,7 +9707,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2184 +#: templates/js/translated/order.js:1584 templates/js/translated/stock.js:2179 msgid "Stock Status" msgstr "" @@ -9614,7 +9731,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1982 templates/js/translated/part.js:983 +#: templates/js/translated/order.js:1982 templates/js/translated/part.js:1254 msgid "No purchase orders found" msgstr "" @@ -9647,8 +9764,8 @@ msgstr "" msgid "Total" msgstr "" -#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1085 -#: templates/js/translated/part.js:1137 +#: templates/js/translated/order.js:2317 templates/js/translated/part.js:1356 +#: templates/js/translated/part.js:1408 msgid "Total Quantity" msgstr "" @@ -9666,11 +9783,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2388 templates/js/translated/order.js:3900 -#: templates/js/translated/part.js:1121 +#: templates/js/translated/part.js:1392 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1166 +#: templates/js/translated/order.js:2447 templates/js/translated/part.js:1437 msgid "Receive line item" msgstr "" @@ -9791,7 +9908,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3623 templates/js/translated/order.js:3712 -#: templates/js/translated/stock.js:1641 +#: templates/js/translated/stock.js:1640 msgid "Shipped to customer" msgstr "" @@ -9835,334 +9952,358 @@ msgstr "" msgid "No matching lines" msgstr "" -#: templates/js/translated/part.js:52 +#: templates/js/translated/part.js:55 msgid "Part Attributes" msgstr "商品属性" -#: templates/js/translated/part.js:56 +#: templates/js/translated/part.js:59 msgid "Part Creation Options" msgstr "商品创建选项" -#: templates/js/translated/part.js:60 +#: templates/js/translated/part.js:63 msgid "Part Duplication Options" msgstr "商品重复选项" -#: templates/js/translated/part.js:64 +#: templates/js/translated/part.js:67 msgid "Supplier Options" msgstr "" -#: templates/js/translated/part.js:78 +#: templates/js/translated/part.js:81 msgid "Add Part Category" msgstr "增加商品类别" -#: templates/js/translated/part.js:168 +#: templates/js/translated/part.js:171 msgid "Create Initial Stock" msgstr "" -#: templates/js/translated/part.js:169 +#: templates/js/translated/part.js:172 msgid "Create an initial stock item for this part" msgstr "" -#: templates/js/translated/part.js:176 +#: templates/js/translated/part.js:179 msgid "Initial Stock Quantity" msgstr "" -#: templates/js/translated/part.js:177 +#: templates/js/translated/part.js:180 msgid "Specify initial stock quantity for this part" msgstr "" -#: templates/js/translated/part.js:184 +#: templates/js/translated/part.js:187 msgid "Select destination stock location" msgstr "" -#: templates/js/translated/part.js:202 +#: templates/js/translated/part.js:205 msgid "Copy Category Parameters" msgstr "复制类别参数" -#: templates/js/translated/part.js:203 +#: templates/js/translated/part.js:206 msgid "Copy parameter templates from selected part category" msgstr "" -#: templates/js/translated/part.js:211 +#: templates/js/translated/part.js:214 msgid "Add Supplier Data" msgstr "" -#: templates/js/translated/part.js:212 +#: templates/js/translated/part.js:215 msgid "Create initial supplier data for this part" msgstr "" -#: templates/js/translated/part.js:268 +#: templates/js/translated/part.js:271 msgid "Copy Image" msgstr "" -#: templates/js/translated/part.js:269 +#: templates/js/translated/part.js:272 msgid "Copy image from original part" msgstr "" -#: templates/js/translated/part.js:277 +#: templates/js/translated/part.js:280 msgid "Copy bill of materials from original part" msgstr "" -#: templates/js/translated/part.js:284 +#: templates/js/translated/part.js:287 msgid "Copy Parameters" msgstr "" -#: templates/js/translated/part.js:285 +#: templates/js/translated/part.js:288 msgid "Copy parameter data from original part" msgstr "" -#: templates/js/translated/part.js:298 +#: templates/js/translated/part.js:301 msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:313 templates/js/translated/stock.js:122 +#: templates/js/translated/part.js:316 templates/js/translated/stock.js:121 msgid "Icon (optional) - Explore all available icons on" msgstr "" -#: templates/js/translated/part.js:329 +#: templates/js/translated/part.js:332 msgid "Edit Part Category" msgstr "编辑商品类别" -#: templates/js/translated/part.js:342 +#: templates/js/translated/part.js:345 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:347 +#: templates/js/translated/part.js:350 msgid "Move to parent category" msgstr "" -#: templates/js/translated/part.js:356 +#: templates/js/translated/part.js:359 msgid "Delete Part Category" msgstr "删除商品类别" -#: templates/js/translated/part.js:360 +#: templates/js/translated/part.js:363 msgid "Action for parts in this category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:368 msgid "Action for child categories" msgstr "" -#: templates/js/translated/part.js:394 +#: templates/js/translated/part.js:397 msgid "Edit Part" msgstr "编辑商品" -#: templates/js/translated/part.js:396 +#: templates/js/translated/part.js:399 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:407 +#: templates/js/translated/part.js:410 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:459 +#: templates/js/translated/part.js:462 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:460 +#: templates/js/translated/part.js:463 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:474 +#: templates/js/translated/part.js:477 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:476 +#: templates/js/translated/part.js:479 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:477 +#: templates/js/translated/part.js:480 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:478 +#: templates/js/translated/part.js:481 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:485 +#: templates/js/translated/part.js:488 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:521 +#: templates/js/translated/part.js:524 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:523 +#: templates/js/translated/part.js:526 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:531 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:530 +#: templates/js/translated/part.js:533 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:547 +#: templates/js/translated/part.js:550 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:557 +#: templates/js/translated/part.js:560 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:560 +#: templates/js/translated/part.js:563 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:585 +#: templates/js/translated/part.js:588 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1554 +#: templates/js/translated/part.js:612 templates/js/translated/part.js:1825 #: templates/js/translated/table_filters.js:488 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:619 +#: templates/js/translated/part.js:622 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:653 templates/js/translated/part.js:739 +#: templates/js/translated/part.js:656 templates/js/translated/part.js:1010 msgid "Trackable part" msgstr "可追溯商品" -#: templates/js/translated/part.js:657 templates/js/translated/part.js:743 +#: templates/js/translated/part.js:660 templates/js/translated/part.js:1014 msgid "Virtual part" msgstr "虚拟商品" -#: templates/js/translated/part.js:669 +#: templates/js/translated/part.js:672 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:673 +#: templates/js/translated/part.js:676 msgid "Salable part" msgstr "可销售商品" -#: templates/js/translated/part.js:815 +#: templates/js/translated/part.js:761 +msgid "Stock item has not been checked recently" +msgstr "" + +#: templates/js/translated/part.js:769 +msgid "Update item" +msgstr "" + +#: templates/js/translated/part.js:770 +msgid "Delete item" +msgstr "" + +#: templates/js/translated/part.js:871 +msgid "No stocktake information available" +msgstr "" + +#: templates/js/translated/part.js:910 templates/js/translated/part.js:933 +msgid "Edit Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:914 templates/js/translated/part.js:945 +msgid "Delete Stocktake Entry" +msgstr "" + +#: templates/js/translated/part.js:1086 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1236 +#: templates/js/translated/part.js:1507 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1260 +#: templates/js/translated/part.js:1531 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1327 templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1598 templates/js/translated/part.js:1936 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1521 +#: templates/js/translated/part.js:1792 msgid "No category" msgstr "没有分类" -#: templates/js/translated/part.js:1552 +#: templates/js/translated/part.js:1823 msgid "No stock" msgstr "" -#: templates/js/translated/part.js:1576 +#: templates/js/translated/part.js:1847 msgid "Allocated to build orders" msgstr "" -#: templates/js/translated/part.js:1580 +#: templates/js/translated/part.js:1851 msgid "Allocated to sales orders" msgstr "" -#: templates/js/translated/part.js:1679 templates/js/translated/part.js:1922 -#: templates/js/translated/stock.js:2387 +#: templates/js/translated/part.js:1960 templates/js/translated/part.js:2203 +#: templates/js/translated/stock.js:2382 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1695 +#: templates/js/translated/part.js:1976 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1761 +#: templates/js/translated/part.js:2042 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1766 +#: templates/js/translated/part.js:2047 msgid "Set Part Category" msgstr "设置商品类别" -#: templates/js/translated/part.js:1771 +#: templates/js/translated/part.js:2052 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1784 +#: templates/js/translated/part.js:2065 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1942 templates/js/translated/stock.js:2407 +#: templates/js/translated/part.js:2223 templates/js/translated/stock.js:2402 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:2022 +#: templates/js/translated/part.js:2303 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:2038 +#: templates/js/translated/part.js:2319 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2383 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2153 templates/js/translated/stock.js:1338 +#: templates/js/translated/part.js:2434 templates/js/translated/stock.js:1337 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2154 templates/js/translated/stock.js:1339 -#: templates/js/translated/stock.js:1599 +#: templates/js/translated/part.js:2435 templates/js/translated/stock.js:1338 +#: templates/js/translated/stock.js:1598 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2441 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2182 +#: templates/js/translated/part.js:2463 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2196 +#: templates/js/translated/part.js:2477 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2277 templates/js/translated/part.js:2278 +#: templates/js/translated/part.js:2558 templates/js/translated/part.js:2559 msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2280 +#: templates/js/translated/part.js:2561 msgid "Specified date is in the past" msgstr "" -#: templates/js/translated/part.js:2286 +#: templates/js/translated/part.js:2567 msgid "Speculative" msgstr "" -#: templates/js/translated/part.js:2336 +#: templates/js/translated/part.js:2617 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2623 msgid "Error fetching scheduling information for this part" msgstr "" -#: templates/js/translated/part.js:2438 +#: templates/js/translated/part.js:2719 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2454 +#: templates/js/translated/part.js:2735 msgid "Maximum Quantity" msgstr "" -#: templates/js/translated/part.js:2499 +#: templates/js/translated/part.js:2780 msgid "Minimum Stock Level" msgstr "" @@ -10290,388 +10431,388 @@ msgstr "" msgid "Remove results" msgstr "" -#: templates/js/translated/stock.js:74 +#: templates/js/translated/stock.js:73 msgid "Serialize Stock Item" msgstr "" -#: templates/js/translated/stock.js:105 +#: templates/js/translated/stock.js:104 msgid "Confirm Stock Serialization" msgstr "" -#: templates/js/translated/stock.js:114 +#: templates/js/translated/stock.js:113 msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:148 +#: templates/js/translated/stock.js:147 msgid "Edit Stock Location" msgstr "编辑仓储地点" -#: templates/js/translated/stock.js:163 +#: templates/js/translated/stock.js:162 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:177 +#: templates/js/translated/stock.js:176 msgid "Are you sure you want to delete this stock location?" msgstr "确实要删除此仓储地点吗?" -#: templates/js/translated/stock.js:184 +#: templates/js/translated/stock.js:183 msgid "Move to parent stock location" msgstr "" -#: templates/js/translated/stock.js:193 +#: templates/js/translated/stock.js:192 msgid "Delete Stock Location" msgstr "删除仓储地点" -#: templates/js/translated/stock.js:197 +#: templates/js/translated/stock.js:196 msgid "Action for stock items in this stock location" msgstr "" -#: templates/js/translated/stock.js:202 +#: templates/js/translated/stock.js:201 msgid "Action for sub-locations" msgstr "" -#: templates/js/translated/stock.js:256 +#: templates/js/translated/stock.js:255 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:298 +#: templates/js/translated/stock.js:297 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:304 +#: templates/js/translated/stock.js:303 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:368 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:389 +#: templates/js/translated/stock.js:388 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:405 +#: templates/js/translated/stock.js:404 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:410 +#: templates/js/translated/stock.js:409 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:431 +#: templates/js/translated/stock.js:430 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:481 +#: templates/js/translated/stock.js:480 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:494 +#: templates/js/translated/stock.js:493 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:519 +#: templates/js/translated/stock.js:518 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:523 templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:522 templates/js/translated/stock.js:523 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:540 +#: templates/js/translated/stock.js:539 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:560 +#: templates/js/translated/stock.js:559 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:569 +#: templates/js/translated/stock.js:568 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:692 +#: templates/js/translated/stock.js:691 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:693 +#: templates/js/translated/stock.js:692 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:770 +#: templates/js/translated/stock.js:769 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:771 +#: templates/js/translated/stock.js:770 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:773 +#: templates/js/translated/stock.js:772 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:774 +#: templates/js/translated/stock.js:773 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:863 +#: templates/js/translated/stock.js:862 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:864 +#: templates/js/translated/stock.js:863 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:958 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:959 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:966 +#: templates/js/translated/stock.js:965 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:967 +#: templates/js/translated/stock.js:966 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:971 +#: templates/js/translated/stock.js:970 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:972 +#: templates/js/translated/stock.js:971 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:976 +#: templates/js/translated/stock.js:975 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:977 users/models.py:220 +#: templates/js/translated/stock.js:976 users/models.py:221 msgid "Add" msgstr "添加" -#: templates/js/translated/stock.js:981 +#: templates/js/translated/stock.js:980 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1073 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1114 +#: templates/js/translated/stock.js:1113 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1141 +#: templates/js/translated/stock.js:1140 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1277 +#: templates/js/translated/stock.js:1276 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1279 +#: templates/js/translated/stock.js:1278 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1284 +#: templates/js/translated/stock.js:1283 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1331 +#: templates/js/translated/stock.js:1330 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1334 +#: templates/js/translated/stock.js:1333 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1360 +#: templates/js/translated/stock.js:1359 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1417 +#: templates/js/translated/stock.js:1416 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1582 +#: templates/js/translated/stock.js:1581 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1604 +#: templates/js/translated/stock.js:1603 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1633 +#: templates/js/translated/stock.js:1632 msgid "In production" msgstr "正在生产" -#: templates/js/translated/stock.js:1637 +#: templates/js/translated/stock.js:1636 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1645 +#: templates/js/translated/stock.js:1644 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1651 +#: templates/js/translated/stock.js:1650 msgid "No stock location set" msgstr "未设置仓储地点" -#: templates/js/translated/stock.js:1820 +#: templates/js/translated/stock.js:1815 msgid "Stock item is in production" msgstr "库存品正在生产" -#: templates/js/translated/stock.js:1825 +#: templates/js/translated/stock.js:1820 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1828 +#: templates/js/translated/stock.js:1823 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1831 +#: templates/js/translated/stock.js:1826 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1833 +#: templates/js/translated/stock.js:1828 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1835 +#: templates/js/translated/stock.js:1830 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1838 +#: templates/js/translated/stock.js:1833 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1842 +#: templates/js/translated/stock.js:1837 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1844 +#: templates/js/translated/stock.js:1839 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1851 +#: templates/js/translated/stock.js:1846 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1853 +#: templates/js/translated/stock.js:1848 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1855 +#: templates/js/translated/stock.js:1850 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1859 +#: templates/js/translated/stock.js:1854 #: templates/js/translated/table_filters.js:216 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1989 +#: templates/js/translated/stock.js:1984 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:2026 +#: templates/js/translated/stock.js:2021 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2199 +#: templates/js/translated/stock.js:2194 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2213 +#: templates/js/translated/stock.js:2208 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2214 +#: templates/js/translated/stock.js:2209 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2446 +#: templates/js/translated/stock.js:2441 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2536 msgid "Details" msgstr "详情" -#: templates/js/translated/stock.js:2557 +#: templates/js/translated/stock.js:2552 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2579 +#: templates/js/translated/stock.js:2574 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2598 +#: templates/js/translated/stock.js:2593 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2617 +#: templates/js/translated/stock.js:2612 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2635 +#: templates/js/translated/stock.js:2630 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2658 +#: templates/js/translated/stock.js:2653 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2666 +#: templates/js/translated/stock.js:2661 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2742 +#: templates/js/translated/stock.js:2737 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2793 templates/js/translated/stock.js:2829 +#: templates/js/translated/stock.js:2788 templates/js/translated/stock.js:2824 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2845 +#: templates/js/translated/stock.js:2840 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2866 +#: templates/js/translated/stock.js:2861 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2867 +#: templates/js/translated/stock.js:2862 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2869 +#: templates/js/translated/stock.js:2864 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2870 +#: templates/js/translated/stock.js:2865 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2871 +#: templates/js/translated/stock.js:2866 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2872 +#: templates/js/translated/stock.js:2867 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2885 +#: templates/js/translated/stock.js:2880 msgid "Select part to install" msgstr "" @@ -10696,7 +10837,7 @@ msgid "Allow Variant Stock" msgstr "" #: templates/js/translated/table_filters.js:92 -#: templates/js/translated/table_filters.js:516 +#: templates/js/translated/table_filters.js:520 msgid "Has Pricing" msgstr "" @@ -10912,6 +11053,10 @@ msgstr "" msgid "Purchasable" msgstr "" +#: templates/js/translated/table_filters.js:504 +msgid "Has stocktake entries" +msgstr "" + #: templates/js/translated/tables.js:70 msgid "Display calendar view" msgstr "显示日历" @@ -11206,35 +11351,35 @@ msgstr "权限" msgid "Important dates" msgstr "重要日期" -#: users/models.py:207 +#: users/models.py:208 msgid "Permission set" msgstr "权限设置" -#: users/models.py:215 +#: users/models.py:216 msgid "Group" msgstr "群组" -#: users/models.py:218 +#: users/models.py:219 msgid "View" msgstr "视图" -#: users/models.py:218 +#: users/models.py:219 msgid "Permission to view items" msgstr "查看项目权限" -#: users/models.py:220 +#: users/models.py:221 msgid "Permission to add items" msgstr "添加项目权限" -#: users/models.py:222 +#: users/models.py:223 msgid "Change" msgstr "更改" -#: users/models.py:222 +#: users/models.py:223 msgid "Permissions to edit items" msgstr "编辑项目权限" -#: users/models.py:224 +#: users/models.py:225 msgid "Permission to delete items" msgstr "删除项目权限"